第八講..由於前天把第7講又聽了一遍,昨天是第8講.第7講用了兩天才聽完.
第8講繼續講述指令.
在第7講裡講了三個指令(5個)
movxchg
lea, lds, les
它們各有各的限制.
mov, 源運算元和目的運算元不能都是儲存單元,目的運算元不能是立即數,源運算元和目的運算元不能都是段暫存器,立即數不能作為目的運算元,**段不能作為目的運算元,ip不能作為運算元。
xchg,指令只能用於通用暫存器和儲存單元之間,或通用暫存器之間交換資料。
lea,led,les 位址傳送指令,源運算元可以使用除立即數定址和暫存器外的其它定址方式。目的運算元可以是通用暫存器。
第8講講述了兩個堆疊操作的指令和幾個標誌位操作。其中標誌位操作不做重點。
1. push 把資料壓入堆疊指標暫存器中。先把bp - 2, 然後把運算元存入bp。運算元可以是通用暫存器,儲存單元,段暫存器。
2. pop 把資料從堆疊指標暫存器中彈出。先把bp取出送入運算元,然後把 bp + 2。運算元可以是通用暫存器,儲存單元,段暫存器,不能是**段。
3. lahf 把標誌位低8位的標誌位送入暫存器ah中。不影響其它位。
4. sahf 把ah暫存器送入標誌位低8位。不影響其他位。
5. pushf 把標誌位壓入堆疊。
6. popf 把棧頂資料彈出到標誌位。
由此,將兩個資料交換的方法有三種。
1.由中間暫存器
mov bx, ax
mov ax, ds
mov ds, bx
2.由xchg
xchg ax, value
3.使用堆疊
push ds
push es
pop es
pop ds
彙編學習筆記
1 cpu的指令集 cpu內整合了不同功能的電路模組 如 加 減法器,比較器 正常工作所對應的不同高低電平 數電知識 組合語言是人對機器指令的語言表述。2 cpu對硬體的控制實際是訪問其記憶體 如顯示卡上整合有ram 視訊記憶體 和rom 裝有唯讀bios 源 被編譯成機器 後被載入記憶體。3 程式...
彙編學習筆記
彙編檔案為 s 檔案 因為c程式執行需要棧,設定好棧了之後就可以呼叫c程式了 bl delay 呼叫delay 暫存器移位 mov r0,r1,lsl 3 r1內容左移3位送r0 暫存器間接定址 ldr r1,r2 r2做位址取數送r1 基址變址定址 ldr r1,r2,4 r2 4作位址取數送r1...
彙編學習筆記
mov al,byte ptr x 記憶體向通用暫存器傳送資料 shl al,1 al中的資料進行邏輯左移一位,針對無符號數的 2運算 dec al 對al暫存器中的值進行自減一之後再把結果放到al暫存器中,其中涉及對al暫存器進行資料讀,並將資料傳送到運算暫存器中,並將運算器結果通過線路傳送到al...