1. 程式人生 > >不會編就不會匯編之寄存器基礎介紹

不會編就不會匯編之寄存器基礎介紹

次方 代碼 img 行數 cpu 完成 它的 bsp mov

  昨天看了寄存器的一些基本信息,今天就寫寫關於它的一些信息吧!

  對於一個匯編程序員來說,CPU中的主要部件就是寄存器。寄存器是CPU中程序員可以用指令讀寫的部件。程序員可以通過改變各種寄存器中的內容來實現對CPU的控制。

  不同的CPU,寄存器的個數、結構都是不相同的。8086CPU有14個寄存器,每個寄存器都要各自的名稱。分別是:AX、BX、CX、DX、SI、DI、SP、BP、IP、CS、SS、DS、ES、PSW

   8086CPU的寄存器都是16位的,可以存放兩個字節。AX、BX、CX、DX 這四個寄存器通常用來存放一般性的數據,被稱為通用寄存器
8086CPU的上一代CPU的寄存器都是8位的,為了保證兼容性,8086CPU的AX、BX、CX、DX 這四個寄存器可以分為兩個可獨立使用的8位寄存器來用:

AX可分為AH和AL
BX可分為BH和BL
CX可分為CH和CL
DX可分為DH和DL

  技術分享

  就是把原寄存器分為了高位寄存器(H)和低位寄存器(L)。

  這裏介紹幾天匯編指令:

    匯編指令 控制CPU完成的操作 用高級語言描述

mov ax,18 將18送入寄存器AX中 AX=18
mov ah,99 將99送入寄存器AH中 AH=99
add ax,9 將寄存器AX中的數加上9 AX=AX+9
mov ax,bx 將寄存器AX中的數據送入寄存器BX中 AX=BX
add ax,bx 將寄存器AX和寄存器BX中的數相加,結果放在AX中 AX=AX+BX

  註意:

    在匯編語言中是不區分大小寫的,MOV AX,18 和 mov ax,18 是一樣的。
 在進行數據傳送或運算時,要註意指令的兩個操作數的類型必須一致。

  這裏有一個簡單的栗子:

      計算2的4次方,代碼如下:

            MOV AX,2       -->將2給到AX裏
            ADD AX,AX      -->AX加上AX,也就是2+2=4
            ADD AX,AX      -->此時的AX裏的值為4,所以就是4+4=8
            ADD AX,AX      -->此時AX裏的值為8,所以 8+8=16,也就是2的4次方

  王爽《匯編語言》學習筆記

不會編就不會匯編之寄存器基礎介紹