1. 程式人生 > >組合語言 第三章

組合語言 第三章

1.記憶體中字的儲存

8086CPU中的字的儲存用的是小端法,即高高低低,用兩個地址連續的記憶體單元:高位位元組存在高地址單元,低位元組存在低地址。

2.DS暫存器

8086CPU自動取ds中的資料為記憶體單元的段地址,並且ds的值並不能直接賦給,要先將值賦給一個一般暫存器進行中轉,在傳入ds中。

3.mov,add,sub命令。

mov:賦值。

mov指令中只給出單元的偏移地址,段地址預設存在ds中。

add:將後面的資料加到前面的資料上,將值賦給前者。

sub:同add進行減法操作。

4.資料段

將一段記憶體當做資料段時,用ds存放資料段的段地址,再根據需要用相關命令訪問資料段中的具體單元。

5.棧

定義:將長度為N(N<=64KB)的一組地址連續,起始地址為16的倍數記憶體單元,當作棧空間來使用。

通過兩個暫存器:

ss:堆疊段暫存器,用來儲存棧底位置

sp:表示棧頂指標,指向棧頂地址

通過push,pop指令進行先入後出的操作

ss:sp的地址始終指向棧頂

pop:先將ss:sp指向的記憶體空間的值賦值給pop的操作物件,然後sp=sp+2。

push:先將sp=sp-2,然後將push物件的值賦給ss:sp指向的記憶體空間。