彙編語言學習筆記(3)

3.3 80X86指令系統

其指令系統可以是以下的6組:

  1. 數據傳送指令
  2. 算術指令
  3. 邏輯指令
  4. 串處理指令
  5. 控制轉移指令
  6. 處理機控制指令

數據傳送指令


傳送指令MOV

  1. 其目的操作數不能是立即碼
  2. 其目的操作時不能是代碼段
  3. 其目的操作數和源操作數不能都是段地址
  4. IP不能作爲源操作數,也不能作爲目的操作數
  5. 立即數不能直接傳送給段寄存器
  6. 兩個操作數必須有一個是寄存器,除了立即尋址以外
  7. MOV BP OFFSET TABLE 是直接將table的偏移地址傳送給 BP

交換指令 ECHG

  1. ECHG OPERA1, OPERA2 兩個操作數不能同時是段寄存器,也不能同時是存儲器,必須有一個是寄存器
  2. 操作數不能是立即數

地址傳送指令

  1. LEA 簡單的理解,和MOV OFFSET TABLE 有點類似
  2. LDS 將偏移地址賦給目的操作數,段地址賦給DS
  3. LES 將偏移地址賦給目的操作數,段地址賦給ES

棧操作指令

  1. 堆棧的數據必須是字,針對於DS
  2. PUSH SRC 源操作數不能使立即數
  3. POP DET 目的操作數,不能POP代碼段或者是立即數

地址傳送指令

  1. LAHF 傳送標誌位的最低7位到AH
  2. SAHF 把AH傳送給標誌位的最低7位,0,2,4,6,7(CF, PF, AF, ZF, SF)
  3. PUSHF 把標誌寄存器的內容壓入到堆棧中
  4. POPF 把堆棧中的內容放入到標誌寄存器中
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章