MSP430 система команд - Команда DEC
*DEC[.W] | Декремент получателя | |
*DEC.B | Декремент получателя | |
Синтаксис | DEC dst или DEC.W dst DEC.B dst |
|
Операция | dst - 1 -> dst | |
Эмуляция | SUB #1,dst SUB.B #1,dst |
|
Описание | Операнд получателя уменьшается (декрементируется) на единицу. Исходное содержимое теряется. | |
Биты статуса | N: | Устанавливается, если результат отрицательный; сбрасывается, если положительный |
Z: | Устанавливается, если dst содержал «1»; в противном случае сбрасывается | |
C: | Сбрасывается, если получатель содержал «0»; в противном случае устанавливается | |
V: | Устанавливается, если произошло арифметическое переполнение; в противном случае сбрасывается; Устанавливается, если исходное значение получателя было 08000h, в противном случае сбрасывается; Устанавливается, если исходное значение получателя было 080h, в противном случае сбрасывается |
|
Биты режима | Биты OSCOFF, CPUOFF и GIE не изменяются | |
Пример | Содержимое регистра R10 декрементируется на 1.
DEC R10 ; декремент R10 ; Пересылка блока из 255 байт, расположенного в памяти начиная с адреса, указанного меткой EDE, ; в область памяти, начало которой указано меткой TONI. Таблицы не должны наложиться: стартовый ; адрес назначения TONI должен находиться вне диапазона от EDE до EDE+0FEh. ; MOV #EDE,R6 MOV #255,R10 L$1 MOV.B @R6+,TONI-EDE-1(R6) DEC R10 JNZ L$1 ; Не следует перемещать таблицы, используя приведенную выше подпрограмму ; с перекрытием, показанным на рис.3.12. |