匯編語言指令長度


1.沒有操作數的指令

指令長度為1個字節

2.操作數只涉及寄存器的的指令

指令長度為2個字節
如:mov bx,ax

3.操作數涉及內存地址的指令

指令長度為3個字節
如:mov ax,ds:[bx+si+idata]

4.操作數涉及立即數的指令

指令長度為:寄存器類型+1
8位寄存器,寄存器類型=1,如:mov al,8;指令長度為2個字節
16位寄存器,寄存器類型=2,如:mov ax,8;指令長度為3個字節

5.跳轉指令

分為2種情況:

5.1 段內跳轉

指令長度為2個字節或3個字節
jmp指令本身占1個字節
段內短轉移,8位位移量占一個字節,加上jmp指令一個字節,整條指令占2個字節
如:jmp short opr

段內近轉移,16位位移量占兩個字節,加上jmp指令一個字節,整條指令占3個字節
如:jmp near ptr opr

5.2 段間跳轉

指令長度為5個字節
如:jmp dword ptr table[bx][di]
或 jmp far ptr opr
或 jmp dword ptr opr

6.inc指令

占用一個字節

7.push指令

占用一個字節

8.segment聲明

占用兩個字節
如codesg segment

9.int 21h

占用兩個字節


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM