MSP430 система команд - Команда DADD

DADD[.W] Десятичное сложение источника, переноса и получателя
DADD.B Десятичное сложение источника, переноса и получателя
Синтаксис DADD src,dst или DADD.W src,dst
DADD.B src,dst
Операция src + dst + C -> dst (десятичное)
Описание Операнды источника и получателя обрабатываются как четыре двоично-десятичных числа (BCD - Binary Coded Decimal) с положительными знаками. Операнд источника и бит переноса (С) десятично прибавляются к операнду получателя. Операнд источника не изменяется. Предыдущее содержимое получателя теряется. Для чисел, представленных не в BCD-формате, результат не определен.
Биты статуса N: Устанавливается, если MSB равен «1»; сбрасывается в противном случае
Z: Устанавливается, если результат равен «0»; в противном случае сбрасывается
C: Устанавливается, если результат превышает 9999
Устанавливается, если результат превышает 99
V: Не определено
Биты режима
Пример Биты OSCOFF, CPUOFF и GIE не изменяются
Пример BCD-число из восьми цифр, содержащееся в регистрах R5 и R6, десятично прибавляется к BCD-числу из восьми цифр, содержащемуся в регистрах R3 и R4 (регистры R6 и R4 содержат MSD).
CLRС               ; очистка переноса
DADD  R5,R3        ; сложение LSDs
DADD  R6,R4        ; сложение MSDs и переноса
JC    OVERFLOW     ; если произошел перенос, выполняется переход в
                   ; подпрограмму обработки ошибок

Пример
Десятичный счетчик из двух цифр в байте ОЗУ с меткой «CNT» инкрементируется на единицу.

CLRС               ; сброс переноса
DADD.B  #1,CNT     ; инкремент десятичного счетчика

или

SETC
DADD.B  #0,CNT     ; = DADC.B   CNT






© 2008 Электроника для начинающих | Programming V.Lasto | Povered by Nano-CMS | Designer S.Gordi