mov long : 32bits
mov word : 16bits
mov byte : 8bits
取有效位址(偏移量)
lea ignore_int, %edx 表示把ignore_int處的有效位址傳給edx(note:是去ignore_int處的偏移量,而不是ignore_int處儲存的內容)
使用方法:lds mem,reg
使用方法:les mem,reg
下面執行的過程是 ax = 0xff11; sp = sp - 2, 儲存ax到棧空間
movb ff11h,%ax
push %ax
與push相反
暫時就先理解為函式呼叫吧
call ***(*** 為標號,我覺得可以將標號理解為c語言中的函式名稱)
中斷返回指令
shl(左移)指令使目的運算元邏輯左移一位,最低位用 0 填充。最高位移入進製標誌位,而進製標誌位中原來的數值被丟棄;
int指令可以引發中斷
int n
n代表中斷號
執行過程:
取中斷型別n
標誌暫存器入棧,if=0、tf=0
cs、ip入棧
(ip)=(n4),(cs) = (n4 + 2)
加1指令
inc指令速度比add指令快,占用空間小
inc指令會影響af of pf sf zf標誌位,但不會影響cf標誌位
減1指令
dec指令速度比sub指令快,占用空間小
dec指令會影響af of pf sf zf標誌位, 但不會影響cf標誌位
in al,imm(應該不需要是8位,也可以是16位,比如3f8h)
in al,dx
out imm8, accum(應該不需要是8位,可以是16位,比如3f8h)
out dx, accum
1.設定es和di
mov ax, #***x
mov es,ax
mov di,#yyyy
2.設定ax的值
mov ax,#zzzz
3.寫入
ATT 彙編語法
在研華的pc104上使用看門狗要使用彙編。使用彙編來修改cmos裡面的引數。也就是內聯彙編。linux下gcc只支援att彙編。所以這兒有必要將att語法學習學習。以後需要的時候翻出來溫習溫習。1,運算元的長度 運算元的長度用加在指令後的符號表示 b byte,8 bit w word,16 bit...
AT T彙編語法格式
1.暫存器的引用要在暫存器前加 如mov eax,ebx 2.運算元排列是左源右目的,如上例表示把值從eax暫存器mov到ebx暫存器 3.常數 立即數前面要加 如mov 4,ebx 4.對於變數加 表示取位址。如mov value,ebx表示傳值給ebx,而mov value,ebx表示傳位址給e...
AT T彙編語法簡介
引用自 ps 這段時間在研究linux源 遇到了at t彙編,故轉貼個不錯的at t彙編貼。就像軟體的真諦 給我乙個標準,我用我的邏輯舞動世界 一樣,at t彙編是組合語言裡的另一種標準,這是相對於鼎鼎大名的intel的x86彙編來說。即使對於電子專業的學生來說,一旦掌握了c51微控制器的彙編,x8...