<p>A nonvolatile memory (11) has a main region (101) for storing a user program which can be rewritten in a self-rewrite mode. The main region (101) includes: a first and a second start sector region (101a, 101b) for storing start programs firstly executed among user programs. When rewriting a user program stored in the first or the second start sector region (101a, 101b) of the nonvolatile memory (11), a control unit (12) rewrites a start program stored in one of the start sector region into a new start program without rewriting the start program stored in the other start sector region.</p>