Разработка программы на Ассемблере
| Категория реферата: Рефераты по информатике, программированию
| Теги реферата: реферат по обж, открытия реферат
| Добавил(а) на сайт: Kornejchuk.
Предыдущая страница реферата | 1 2 3 4 | Следующая страница реферата
. способ адресации.
Для МП 1810ВМ86 (8086) команда занимает от одного до шести байтов. Первым
байтом команды всегда является код операции, например код команды INT XXh
равен CD(HEX).
По функциональному признаку инструкции можно разбить на пять больших групп:
. 1) команды пересылки данных,
. 2) арифметические команды,
. 3) логические команды,
. 4) команды переходов и
. 5) команды управления.
Существует пять основных способов адресации:
. регистровая,
. непосредственная,
. прямая,
. косвенная и
. стековая.
Большинство остальных способов адресации являются комбинациями или
видоизменениями перечисленнных.
В первом случае операнд(ы) располагаются в регистрах микропроцессора (МП), например по команде MOV AX,CX пересылается содержимое CX в AX.
При непосредственной адресации операнд располагается в памяти
непосредственно за КОП, инструкция MOV AL,0f5h записывает число 245(f5) в
регистр AL.
В случае прямой адресации за КОП следует не сам операнд, а адрес ячейки
памяти или внешнего устройства, например команда IN AL,40h вводит байт
данных из внешнего устройства с адресом 40h.
Косвенная адресация отличается от регистровой тем, что в регистре хранится
адрес операнда, т.е. по команде MOV AL,[BX] в аккумулятор al будет записано
число из ячейки памяти с адресом, хранящимся в регистре BX.
Стековая адресация производится к операндам расположенным в области памяти, называемой стек.
НЕКОТОРЫЕ ОПЕРАТОРЫ, ПРЕДОПРЕДЕЛЁННЫЕ ИМЕНА, ДИРЕКТИВЫ И КОМАНДЫ
АССЕМБЛЕРА 80X86(8088)
ПРЕДОПРЕДЕЛЕННЫЕ ИМЕНА
1. $ - программный счетчик. Этот символ отмечает текущий адрес в текущем сегменте. Полезен при определении длины цепочек байтов или строк.
text DB 'This string has NN letters'
NN = $ - text; NN = длине строки text (количеству байтов
в этой строке). Не путать часть строки '..NN..' и константу NN!
2. @data - адрес начала сегмента данных.
....
mov ax,@data
mov ds,ax;
в сегментном регистре DS теперь адрес сегмента данных.
3. ??date, ??time, ??filename - эти имена во время трансляции заменяются, соответственно на текущие дату, время и имя файла в формате ASCII.
ОПЕРАТОРЫ
1. () - скобки, определяют порядок вычислений
2. [] - например [BX] означает содержимое ячейки памяти с адресом в
регистре bx. Признак косвенной адресации.
3. +, -, *, / - операторы сложения, вычитания, умножения и деления. mov ax, (2 * 3 + 8 / 2) - 2; в регистр ax будет помещено число 8.
4. MOD - деление по модулю. Даёт остаток.
5. SHL,SHR - сдвиг операнда влево, вправо. mov si, 01010101b SHR 3; в регистр SI будет загружено число 0Ah
(00001010).
6. NOT - побитовая инверсия.
7. AND,OR,XOR - операции "И","ИЛИ","ИСКЛ.ИЛИ". mov dl, (10d OR 5d) XOR 7d; (dl) будет равно 8.
8. : - переназначение сегмента.
mov dl,[es:bx]; поместить в dl байт данных из сегмента es и отстоящий от
его начала на (bx) байтов (смещение).
9. OFFSET - оператор получения смещения адреса относительно начала сегмента
(то есть количества байтов от начала сегмента до идентификатора адреса).
mov bx, OFFSET table
ДИРЕКТИВЫ (ПСЕВДООПЕРАТОРЫ)
1. : - определяет близкую метку (в пределах сегмента).
jmp lbl .... ....
lbl: ....
2 . = - присваивает символическому имени значение выражения.
videoram = 0B800h; присвоение videoram = 0B000h;
3. .CODE - определяет начало кодового сегмента, то есть сегмента, где
располагаются коды программы.
4. .DATA - определяет начало сегмента данных.
5. DB,DW - директивы резервирующие один или несколько байтов: DB, или одно
или несколько слов: DW.
....
.DATA
fibs DB 1,1,2,3,5,8,13
rus DB 'Турбо Ассемблер'
buf DB 80 DUP(0);резервируется 80 байтов,каждый обнуляется
int DW 65535;в двух байтах располагается число FFFFh.
Array DW 100 DUP (0);резервируется 100 слов
6. END - обозначает конец программы.
....
.CODE
MyPROG:....; точка входа (начало программы).
Рекомендуем скачать другие рефераты по теме: реферат на тему экономика, отчет о прохождении практики.
Категории:
Предыдущая страница реферата | 1 2 3 4 | Следующая страница реферата