Команды ассемблера. Всего определено команд, разделенных по категориям: Категория Кол-во С регистрами общего назначения XAR0 – XAR7 С регистром

Всего определено… команд, разделенных по категориям:

Категория Кол-во
С регистрами общего назначения XAR0 – XAR7  
С регистром указателя сегмента памяти данных DP  
С регистром указателя стека SP  
С регистрами AX (AH, AL)  
16-разрядные с регистрами ACC  
32-разрядные с регистрами ACC  
64-разрядные с регистрами ACC  
С регистрами P или XT  
Перемножение 16х16  
Перемножение 32х32  
Прямой доступ к памяти  
Ввод/вывод  
Программная память  
Ветвление, вызов, возврат  
С регистром прерываний IER  
С регистрами статуса ST0, ST1  
Разного назначения  
Итого  

· Операции с регистрами XAR0-XAR7

Мнемоника Код операции XARn       Пример
ADDB XARn, #7bit   1nnn 0CCC CCCC   XARn = XARn + 0:7bit;
ADRK #8bit     IIII IIII   XAR(ARP) = XAR(ARP) + 0:8bit;
  CMPR 0 CMPR 1 CMPR 2 CMPR 3           Сравнение AR0 c AR(ARP) на = > < !=
MOV AR6,loc16 MOV AR7,loc16     LLLL LLLL   AR6/7 = [loc16]; AR6/7H = unchanged;
MOV loc16,ARn   1nnn LLLL LLLL   [loc16] = ARn;
MOV XARn,PC       1nnn   XARn = 0:PC;
MOVB AR6,#8bit MOVB AR7,#8bit     CCCC CCCC   AR6/7 = 0:8bit; AR6/7H = unchanged;
MOVB XAR0…5, #8bit MOVB XAR6, #8bit MOVB XAR7, #8bit   0nnn CCCC CCCC   XARn = 0:8bit;
MOVL loc32,XAR0 MOVL loc32,XAR1 MOVL loc32,XAR2 MOVL loc32,XAR3 MOVL loc32,XAR4 MOVL loc32,XAR5 MOVL loc32,XAR6 MOVL loc32,XAR7     LLLL LLLL   [loc32] = XARn;
MOVL XAR0, loc32 MOVL XAR1, loc32 MOVL XAR2, loc32 MOVL XAR3, loc32 MOVL XAR4, loc32 MOVL XAR5, loc32 MOVL XAR6, loc32 MOVL XAR7, loc32     LLLL LLLL   XARn = [loc32];
MOVL XAR0, #22bit MOVL XAR1, #22bit MOVL XAR2, #22bit MOVL XAR3, #22bit MOVL XAR4, #22bit MOVL XAR5, #22bit MOVL XAR6, #22bit MOVL XAR7, #22bit     00СС СССС СССС СССС СССС СССС XARn = 0:22bit; В КОП добавлены 16 бит
MOVZ AR0…5n,loc16 MOVZ AR6,loc16 MOVZ AR7,loc16   1nnn LLLL LLLL   ARn = [loc16]; ARnH = 0;
SBRK #8bit     CCCC CCCC   XAR(ARP) = XAR(ARP) − 0:8bit;
SUBB XARn, #7bit   1nnn 1CCC CCCC   XARn = XARn − 0:7bit;

· Операции загрузки регистра DP

Регистр DP содержит адрес памяти данных.

Мнемоника Код операции XARn       Пример
MOV DP,#10bit   10СС СССС СССС   DP(9:0) = 10bit; DP(15:10) = unchanged;
MOVW DP,#16bit         СССС СССС СССС СССС DP(15:0) = 16bit;
MOVZ DP,#10bit   10СС СССС СССС   DP(9:0) = 10bit; DP(15:10) = 0;

· Операции с регистром SP

Мнемоника Код операции XARn       Пример
ADDB SP,#7bit     0ССС СССС   SP = SP + 0:7bit;
POP ACC           SP −= 2; ACC = [SP];
POP AR1:AR0           SP −= 2; AR0 = [SP]; AR1 = [SP+1]; AR1H:AR0H = без изменений;
POP AR3:AR2           SP −= 2; AR2= [SP]; AR3 = [SP+1]; AR3H:AR2H = без изменений;
POP AR5:AR4           SP −= 2; AR5 = [SP]; AR4= [SP+1]; AR5H:AR4H = без изменений;
POP AR1H:AR0H           SP −= 2; AR0H = [SP]; AR1H = [SP+1]; AR1:AR0 = без изменений;
POP DBGIER           SP −= 1; DBGIER = [SP];
POP DP:ST1           SP −= 2; ST1 = [SP]; DP = [SP+1];
POP DP           SP −= 1; DP = [SP];
POP IFR           SP −= 1; IFR = [SP];
POP loc16     LLLL LLLL   SP -= 1; [loc16] = [SP];
POP P           SP −= 2; P = [SP];
POP RPC           SP −= 2; RPC = [SP];
POP ST0           SP −= 1; ST0 = [SP];
POP ST1           SP −= 1; ST1 = [SP];
POP T:ST0           SP −= 2; T = [SP]; ST0 = [SP+1]; TL = без изменений;
POP XT           SP −= 2; XT = [SP];
POP XAR0 POP XAR1 POP XAR2 POP XAR3 POP XAR4 POP XAR5 POP XAR6 POP XAR7           SP −= 2; XARn = [SP];
PUSH ACC           [SP] = ACC; SP += 2;
PUSH AR0:AR1 PUSH AR3:AR2 PUSH AR5:AR4           [SP] = AR0; [SP+1] = AR1; SP += 2;
PUSH AR3:AR2           [SP] = AR2; [SP+1] = AR3; SP += 2;
PUSH AR5:AR4           [SP] = AR4; [SP+1] = AR5; SP += 2;
PUSH AR1H:AR0H           [SP] = AR0H; [SP+1] = AR1H; SP += 2;
PUSH DBGIER           [SP] = DBGIER; SP += 1;
PUSH DP:ST1           [SP] = DP; SP += 1;
PUSH DP           [SP] = ST1; [SP+1] = DP; SP += 2;
PUSH IFR           [SP] = IFR; SP += 1;
PUSH loc16     LLLL LLLL   [SP] = [loc16]; SP += 1;
PUSH P           [SP] = P; SP += 2;
PUSH RPC           [SP] = RPC; SP += 2;
PUSH ST0           [SP] = ST0; SP += 1;
PUSH ST1           [SP] = ST1; SP += 1;

· Операции с регистрами AX (AH, AL)

AX – это части ACC. AH – старшая, AL – младшая. Для них доступны команды с данными не юлее 16 бит.

Мнемоника Код операции XARn       Пример
ADD AX,loc16   010A LLLL LLLL    
ADD loc16,AX            
ADDB AX,#8bit            
AND AX,loc16,#16bit            
AND AX,loc16            
AND loc16,AX            
ANDB AX,#8bit            
ASR AX,1..16            
ASR AX,T            
CMP AX,loc16            
CMPB AX,#8bit            
FLIP AX            
LSL AX,1..16            
LSL AX,T            
LSR AX,1..16            
LSR AX,T            
MAX AX,loc16            
MIN AX,loc16            
MOV AX,loc16            
MOV loc16,AX            
MOV loc16,AX,COND            
MOVB AX,#8bit            
             
             
             
             
             
             
             
             
             
             
Мнемоника Пример
ADD Ист1, Ист2[Сдвиг] Добавить Ист1 =Ист1 + Ист2
AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
ADD Ист1, Ист2[Сдвиг] Добавить Ист1 =Ист1 + Ист2

· Операции с регистрами ACC

Формат команд:

Команда Ист1, Ист2{Сдвиг)

С содержимым Ист1 и Ист2 выполняется команда. Предварительно содержимое Ист2 сдвигается влево на число бит Сдвиг (необязательно)

В качестве Ист1 или Ист2 могут быть:

· ACC – аккумулятор АЛУ.

· loc16 – 16-разрядная ячейка памяти.

· loc32 – 32 разрядная ячейка памяти.

В качестве Ист2 дополнительно могут быть:

· #8bit – 8-разрядное значение.

· #16bit – 16-разрядное значение.

Примеры команд

Мнемоника Действие
   
   
   
   
   
ADD ACC,loc32 {<< 0..16} Сложение. К ACC добавить содержимое loc32 и перенос. ACC = ACC + [loc32] + C;
ADD ACC,loc16 {<< 0..16} Сложение. К ACC добавить содержимое loc16. if(SXM = 1) //расшир. знака разрешено ACC = ACC + S:[loc16]<<сдвиг else // расшир.знака запрешено ACC = ACC + 0:[loc16]<<сдвиг;
ADDB ACC,#8bit Сложение. К ACC добавить 8-битную константу. ACC = ACC + 0:8bit;
SUB ACC,loc16 {<< 0..16} Вычитание. Из ACC вычесть содержимое loc16. if(SXM = 1) //расшир. знака разрешено ACC = ACC - S:[loc16]<<сдвиг else // расшир.знака запрешено ACC = ACC - 0:[loc16]<<сдвиг;
SUBB ACC,#8bit Вычитание. Из ACC вычесть 8-битную константу. ACC = ACC - 0:8bit;
AND ACC,loc16 ACC = ACC AND 0:[loc16];
AND ACC,#16bit {<< 0..16} ACC = ACC AND (0:16bit << сдвиг);
OR ACC,loc16  
OR ACC,#16bit {<< 0..16}  
XOR ACC,loc16  
XOR ACC,#16bit {<< 0..16}  
   
   

· Операции с регистрами P или XT

Инструкция Мнемоника Действие
ADDUL ADD Ист1, Ист2[Сдвиг] Добавить Ист1 =Ист1 + Ист2
MAXCL AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
MINCL AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
MOV ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MOVA ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MOVAD ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MOVDL ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MOVH ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MOVL ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MOVP ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MOVS ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MOVX ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
SUBUL ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
DMAC ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MAC ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MPY ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MPYA ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MPYB ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MPYS ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MPYU ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
MPYXU ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
SQRA ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
SQRS ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
XMAC ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
XMACD ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
IMACL ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
IMPYAL ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
IMPYL ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
IMPYSL ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
IMPYXUL ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
QMACL ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
QMPYAL ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
QMPYSL ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
QMPYXUL ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом

· Операции прямого доступа к памяти

Инструкция Мнемоника Действие
ADD ADD Ист1, Ист2[Сдвиг] Добавить Ист1 =Ист1 + Ист2
AND AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
CMP AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
DEC AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
DMOV AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
INC AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
MOV AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
MOVB AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
OR AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
TBIT AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
TCLR AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
TSET AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
XOR AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2

· Операции ввода вывода

Инструкция Мнемоника Действие
IN ADD Ист1, Ист2[Сдвиг] Добавить Ист1 =Ист1 + Ист2
OUT AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
UOUT AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2

· Операции с памятью программ

Инструкция Мнемоника Действие
PREAD ADD Ист1, Ист2[Сдвиг] Добавить Ист1 =Ист1 + Ист2
PWRITE AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
XWRITE AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
XWRITE AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
XPWRITE AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2

· Операции ветвления, вызова, возврата

Инструкция Мнемоника Действие
B ADD Ист1, Ист2[Сдвиг] Добавить Ист1 =Ист1 + Ист2
BANZ AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
BAR AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
BF AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
FFC AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
IRET AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
LB AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
LC AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
LCR AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
LOOPZ AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
LOOPNZ AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
LRET AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
LRETE AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
LRETR AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
RPT AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
SB AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
SF AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
SBF AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
XB AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
XBANZ AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
XCALL AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2

· Математические

Синтаксис мнемоники команды:

Имя Ист1, Ист2[Сдвиг]

Инструкция может использовать 1 или 2 операнда Ист1, Ист2. Ист1 – это источник первого операнда и приемник результата. Ист2 – это источник второго операнда. Для Ист2 может использоваться предварительная операция сдвига на задаваемое число бит.

Операндами могут быть:

· Регистр аккумулятора.ACC и его части (старшая AX, младшая AL).

· Регистр произведения блока умножителя P и его части (старшая PH, младшая PL).

· Константы 16, 8 или 7 бит.

· Дополнительные регистры XAR общего назначения.

· Содержимое памяти с заданным размещением loc16, loc32.

Пример.

ADD XAR0, XAR3 << 3; Сложение XAR0 со сдвинутым влево на 3 бита XAR3.

Основные команды:

Мнемоника Действие
ABORTI Отменить прерывание
ABS ACC Абсолютное значение ACC ACC = Abs(ACC)
ADD Ист1, Ист2[Сдвиг] Добавить Ист1 = Ист1 + Ист2
ADD XARn, #7bit Добавить константу из 7 бит XARn = XARn + #7bit
ADD Ист1, Ист2[Сдвиг] Добавить Ист1 = Ист1 + Ист2
AND Ист1, Ист2[Сдвиг] Операция И Ист1 =Ист1 & Ист2
ASR Ист1[Сдвиг] Арифметический сдвиг вправо Ист1 =Ист1 со сдвигом
B Смещение, Условие Условный переход Переход на (Смещение) при выполнении (Условия)
BF Смещение, Условие Быстрый условный переход Переход на (Смещение) при выполнении (Условия)
BANZ Смещение, Ист2  

· Ветвления

Синтаксис мнемоники команды:

Имя Смещение, Условие

Если условие выполняется, то содержимое счетчика команд меняется на величину (Смещения). Мнемоника проверяемых условий:

Условие Объяснение Проверяемые флаги
NEQ не равно Z=0
EQ равно Z=1
GT больше Z=0 и N=0
GEQ больше или равно (не меньше) N=0
LT меньше N=1
LEQ меньше или равно (не больше) Z=1 или N=1
HI выше C=1 и Z=0
HIS, C выше или тоже самое C=1
LO, NC ниже, переноса нет C=0
LOS ниже или тоже самое C=0 или Z=1
NOV нет переполнения. V=0
OV переполнение V=1
NTC бит теста не установлен TC=0
TC бит теста установлен. TC=1
NBIO входной сигнал BIO нулевой BIO=0
UNC безусловный  

· Основные инструкции для работы с регистрами

Инструкция. Мнемоника Действие
ADDB ADDB XARn, #7bit #7bit - 7-битовая константа без знака XARn = XARn + #7bit
ADRK ADRK XARn, #8bit #7bit - 8-битовая константа без знака XARn = XARn + #8bit
ADDK addk (.unit) cst, dst .unit =.S1,.S2 cst+dst => dst
SUB SUBU sub (.unit) src1, src2, dst .unit =.L1,.L2, S1, S2 src1=src2 => dst
ABS abs (.unit) src, dst .unit =.L1,.L2 abs(src) => dst
B b (.unit) label .unit = S1, S2  
CMPEQ cmpeq (.unit) src1, src2, dst .unit =.L1,.L2 1 => dst при src1=src2
CMPGT CMPGTU cmpgt (.unit) src1, src2, dst .unit =.L1,.L2 1 => dst при src1>src2
CMPLT CMPLTU cmplt (.unit) src1, src2, dst .unit =.L1,.L2 1 => dst при src1<src2
MPY MPYU mpy (.unit) src1, src2, dst .unit =.M1,.M2 src1*src2 => dst
MV mv (.unit) src, dst .unit =.L1,.L2, S1,.S2,.D1,.D2 src => dst
MVK mvk (.unit) cst, dst .unit =.S1,.S2 cst => dst
NEG neg (.unit) src, dst .unit =.L1,.L2,.S1,.S2 =src => dst
NOP nop  
STB STH STW stb (.unit) src, *+baseR[offserR] .unit =.D1,.D2 src => baseR[offsetR]
LDB LDH LDW ldb (.unit) *+baseR[offserR], dst .unit =.D1,.D2 baseR[offsetR] => dst
AND and (.unit) src1, src2, dst .unit =.L1,.L2, S1, S2 src1 AND src2 => dst
OR or (.unit) src1, src2, dst .unit =.L1,.L2,.S1,.S2 src1 OR src2 => dst
XOR xor (.unit) src1, src2, dst .unit =.L1,.L2, S1, S2 src1 XOR src2 => dst
NOT not (.unit) srt, dst .unit =.L1,.L2,.S1,.S2  
SHL shl (.unit) src2, src1, dst .unit =.S1,.S2 (src2 на src1) => dst
SHR shr (.unit) src2, src1, dst .unit =.S1,.S2 (src2 на src1) => dst

· Основные команды для работы с вещественными числами

Инструкция Мнемоника Действие
ABSSP ABSDP abssp (.unit) src, dst .unit =.S1,.S2 absdp(src) => dst
ADDSP ADDDP addsp (.unit) src1, src2, dst .unit =.L1,.L2 src1+src2 => dst
SUBSP SUBDP subsp (.unit) src1, src2, dst .unit =.L1,.L2 src1+src2 => dst
CMPEQSP CMPEQDP cmpeqsp (.unit) src1, src2, dst .unit =.S1,.S2 1 => dst при src1=src2
CMPGTSP CMPGTDP cmpgtsp(.unit) src1, src2, dst .unit =.S1,.S2 1 => dst при src1>src2
CMPLTSP CMPLTDP cmpltsp (.unit) src1, src2, dst .unit =.S1,.S2 1 => dst при src1<src2
MPYSP MPYDP mpysp (.unit) src1, src2, dst .unit =.M1,.M2 src1*src2 => dst
SPINT spint (.unit) src, dst .unit =.L1,.L2 src1 => dst
INTSP intsp (.unit) src, dst .unit =.L1,.L2 src1 => dst
DPINT dpint (.unit) src, dst .unit =.L1,.L2 src1 => dst
INTDP intdp (.unit) src, dst .unit =.L1,.L2 src1 => dst
DPSP dpsp (.unit) src, dst .unit =.L1,.L2 src1 => dst
SPDP spdp (.unit) src, dst .unit =.L1,.L2 src1 => dst

· Листинги программ

Листинг программы показывает исходные инструкции и объектный код, который они производят. Чтобы получить файл листинга, вызовите ассемблер с опцией - L. Листинг печатается постранично. Незаполненную строку и строку заголовка, имеют наверху каждая страница распечатки. Любой заголовок, определенный.title директивой, печатается в строке заголовка. Номер страницы печатается справа от заголовка. Если Вы не используете.title директиву, печатается имя исходного файла. Ассемблер вставляет незаполненную строку ниже строки заголовка.

Каждая строка в исходном файле создает, по крайней мере, одну строку в файле листинга. Она содержит в порядке слева направо номер исходной инструкции, значение SPC, объектный код, и исходную инструкцию..

Пример показывает листинг ассемблера.




double arrow
Сейчас читают про: