![]() |
Главная Случайная страница Контакты | Мы поможем в написании вашей работы! | |
|
1.: - определяет близкую метку (в пределах сегмента).
jmp lbl........lbl:....2. = - присваивает символическому имени значение выражения.
videoram = 0B800h; присвоение videoram = 0B000h;
3. .CODE - определяет начало кодового сегмента, то есть сегмента, где располагаются коды программы.
4. .DATA - определяет начало сегмента данных.
5. DB,DW - директивы резервирующие один или несколько байтов: DB, или одно или несколько слов: DW.
.....DATAfibs DB 1,1,2,3,5,8,13rus DB 'Турбо Ассемблер'buf DB 80 DUP(0);резервируется 80 байтов,каждый обнуляетсяint DW 65535;в двух байтах располагается число FFFFh.Array DW 100 DUP (0);резервируется 100 слов6. END - обозначает конец программы.
.....CODEMyPROG:....; точка входа (начало программы).....; команды программы.... END MyPROG7. ENDM - окончание блока или макроопределения
8. ENDP - обозначает конец подпрограммы.
9. EQU - присваивает символическому имени или строке значение выражения.
BlkSize EQU 512BufBlks EQU 4BufSize EQU BlkSize * BufBlks10. LABEL - определяет метку соответствующего типа.
.....DATAm_byte LABEL BYTE;метка m_byte типа BYTE позволяет теперьm_word DW 0;иметь доступ отдельно к каждому байту данных.CODE;m_word типа WORD.... mov [m_word],0204h add [m_byte],'0';теперь в m_word хранится код add [m_byte+1],'0';3234h,ASCII код '0' равен 30h11. LOCAL - определяет метки внутри макроопределений как локальные и в каждом макрорасширении вместо них ассемблер вставляет уникальные метки:??XXXX, где XXXX = (0000...FFFF)h. Почему??XXXX? Да потому что никому не должно прийти в голову начинать символическое имя с??, и транслятор смело может генерировать метки не боясь совпадений.
12. MACRO - задает макроопределение.
Swap MACRO a,b; a,b - параметры макро (ячейки памяти) mov ax,b;данное макрооопределение позволяет делать mov bx,a;обмен данными между ячейками памяти, в mov a,ax;отличие от команды xchg; mov b,bx;нельзя mov a,b; ENDMВызов этого макроса производится командой: Swap m,n
13. .MODEL - определяет размер памяти под данные и код программы.
.MODEL tiny;под программу,данные и стек отводится один общий сегмент (64 Kb).
14. PROC - определяет начало подрограммы.
Print PROC NEAR;здесь команды подпрограммыPrint ENDP.... call Print;вызов подпрграммы.15. .STACK - определяет размер стека.
.STACK 200h; выделяет 512 байтов для стека.
16. .RADIX base - определяет систему счисления по умолчанию, где base - основание системы счисления: 2, 8, 10, 16.
.RADIX 8oct = 77; oct равно 63d.17.; - начало комментария.
Дата публикования: 2015-01-23; Прочитано: 388 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!