PURPOSE: To obtain flexible arithmetic processing unit by providing a memory for a memory protection which outputs memory protect data when a write is going to be executed in the address of a memory protect area.
CONSTITUTION: When the write is going to be executed in the address of the area where the data which is the object of the memory protection of a data memory 4 is written, the memory protect data 19 at the same address is outputted from the memory 10 for the memory protection and transmitted to a gate 14. At this time, if the memory protect data 19 is '1' a protect error signal 6 is outputted from the gate 14 and the data write signal 3 to a data memory 4 is gated by a gate 13, so that the write action of the data is not executed to protect memory. If the memory protect data 19 is '0' the protect error signal 6 is not outputted from the gate 14 and the write action in the data memory 4 is normally executed.