Способы отображения чисел на ассемблере

В следующем коде ниже я не уверен, что D'93' а также D'122' имею в виду. Единственный раз, когда я использовал ассемблер в прошлом, были использованы шестнадцатеричные числа или двоичные числа. Что означает это обозначение и как я могу преобразовать в то, что я могу понять, чтобы я мог проверить математику вручную?

#include <p18F452.inc>
SUM     EQU 0x10
        ORG 0x00
        GOTO START
        ORG 0x20
START:  MOVLW D'93'
        MOVWF SUM
        MOVLW D'122'
        ADDWF SUM,W
        BNC SAVE
        SETF WREG
SAVE:   MOVWF SUM
        SLEEP
        END

1 ответ

Решение

D обозначает десятичный. По умолчанию неквалифицированные числа интерпретируются как шестнадцатеричные, если не переопределены RADIX или же LIST директивы.

Квалификаторы / префиксы, используемые MPASM:

  • B'10' для двоичного
  • O'10' для восьмеричного
  • D'10' для десятичной дроби (также можно записать как .10)
  • H'10' для шестнадцатеричного (также можно записать как 0x10)
  • A'a' для ASCII (также можно записать как 'a')
Другие вопросы по тегам