Добавил:
Опубликованный материал нарушает ваши авторские права? Сообщите нам.
Вуз: Предмет: Файл:

Lectures / 08

.pdf
Скачиваний:
42
Добавлен:
16.04.2013
Размер:
136.33 Кб
Скачать

Организация ЭВМ и систем

Лекция 8

Команды пересылки. Работа со стеком. Прерывания DOS

Команда пересылки mov

mov приемник, источник

Примеры:

mov ax, bx mov dl, al mov si, dx mov sp, bp mov dh, cl mov ax, ax

Преобразование данных в командах

mov ax,[bx] inc [bx] mov [bx],0

mov ax,word ptr[bx] inc byte ptr[bx]

mov word ptr[bx],0

FLP dw 0

…………..

mov byte ptr (FLP+1),0ffh

Команда обмена xchg

xchg оп1, оп2

xchg ax,bx

xchg ax, word ptr [si]

Команда загрузки эффективного адреса

lea reg, mem

Эквивалентно

LEA SI, Mesg MOV SI, OFFSET Mesg

Команды загрузки указателей

lds reg, mem les reg, mem lgs reg, mem lfs reg, mem lss reg, mem

lds ax,var1

mov ax,word ptr var1

 

mov DS,word ptr var1+2

Пример: загрузить в es:di указатель строки s1 s1 db 'Hello$'

s1_ad dd s1 …..

les di,s1_ad

 

 

 

Стек

Дно стека

Старшие адреса

 

100

 

(начальное

 

 

 

FE

 

 

 

значение SP)

 

 

 

 

 

 

FC

 

 

 

 

 

 

 

 

 

 

 

FA

 

 

 

 

 

 

 

 

F8

 

 

 

 

Вершина стека (текущее

значение SP)

Рост

 

 

 

 

02

 

стека

 

 

 

 

 

00

 

PUSH - запись

 

 

 

 

 

 

Младшие адреса

 

 

 

POP - чтение

Уменьшение стека

SP

SS

Команды записи и чтения стека

Загрузка в стек (запись)

push источник

1)sp sp-2

2)[ss:sp] 16-битный источник

Выгрузка из стека (чтение)

pop приемник

1) 16-битный приемник [ss:sp]

2) sp sp+2

Запись и чтение регистра флагов

pushf

popf

Запись и чтение регистров общего

назначения

pusha

Запись в стек ax, cx, dx, bx, sp, bp, si, di

popa

Извлечение из стека di,si,bp,sp,bx,dx,cx,ax

Соседние файлы в папке Lectures