文章出處

•MOV與ADD指令

匯編指令

控制CPU完成的操作

形式化語法描述

mov ax, 18

將18送入AX

(AX)=18

mov   ah, 78

將78送入AH

(AH)=78

add ax, 8

將AX中的數值加8

(AX)=(AX)+8

mov ax, bx

將BX中數據送入AX

(AX)=(BX)

add   ax, bx

將AX、BX內容相加,結果存入AX

(AX)=(AX)+(BX)

                               •說明:匯編指令不區分大小寫;兩個操作數必須位數一致。

 

•Debug命令
▫R命令:查看、改變CPU寄存器的內容
▫D命令:以16進制形式顯示一塊內存區域的內容
 
▫E命令:改寫內存中的內容
▫A命令:以匯編指令的格式在內存中寫入一條機器指令
 
▫U命令:將內存中的機器指令翻譯為匯編指令
▫T命令:執行一條機器指令
 
▫G命令:執行到指定位置(斷點),如“g cs:0012”;
▫P命令:執行子程序調用、循環、中斷、重復字符串操作等指令,停止于下條指令。
 
▫Q命令:退出Debug
•說明:
▫在Debug中輸入或顯示的數據都是十六進制形式;
▫Debug命令是單個字母,命令和參數的大小寫可混合輸入;
▫當命令出現語法錯誤時,將在出錯位置顯示 “^Error”;
▫使用T命令執行一條指令前,一定要確保其有效。無效指令可能導致處理器死鎖、Debug無法響應、甚至系統重新引導。
 
                                             
                                                                    MOV/ADD/SUB指令(1/2)
                                                                     •功能:傳送、累加、累減。
                                                                     •格式:兩個操作數。

操作數1

操作數2

示例

寄存器

立即數

mov ax, 1000H

段寄存器

寄存器

mov ds, ax

寄存器

寄存器

add bx,   ax

寄存器

內存單元

sub   cx,   [0]

內存單元

寄存器

mov   [0], al

寄存器

段寄存器

mov   bx,   ds

內存單元

段寄存器

mov [0],   ds

段寄存器

內存單元

mov ds, [0]

……

……

……

 

•INC指令(inc)
▫格式:inc 操作數   
▫功能:將操作數的值加1
▫說明:操作數可以是寄存器,也可以是內存單元
 
•DEC指令(dec)
▫格式:dec 操作數
▫功能:將操作數的值減1
▫說明:操作數可以是寄存器,也可以是內存單元
 
•使用LOOP指令實現循環功能的要點
▫在CX中存放循環次數;
▫LOOP指令中的標號所標識地址要在指令前面;
▫要循環執行的程序段寫在標號和LOOP指令中間;
 
•LOOP循環程序框架

 

        mov cx,循環次數

  s:   循環執行的程序段

  ……

        loop s

 

 

 

文章列表


不含病毒。www.avast.com
arrow
arrow
    全站熱搜
    創作者介紹
    創作者 大師兄 的頭像
    大師兄

    IT工程師數位筆記本

    大師兄 發表在 痞客邦 留言(0) 人氣()