1. An arithmetic processing unit comprising: an arithmetic section for performing arithmetic processing; a register file having K number of windows each of which has N number of registers including a shared register that is shared by a neighboring window, and is used for passing an argument when calling a subroutine, a current window selecting unit for selecting one of the K number of windows, and a register selecting unit for selecting a reading register via a reading address; and a control section for outputting a window address signal for the current window selecting unit of the register file to select a window.