http://www.dbgPRo.com/archives/394.html
8086/8088CPU的寄存器有4類:數據寄存器:AX、BX、CX、DX (存放一般性的數據,又稱通用寄存器)指針及變址寄存器:SP、BP、SI、DI段寄存器:CS、DS、SS和ES控制寄存器:ip和Flags
AX (Accumulator),用累加器進行的操作可能需要更少時間。累加器可用于乘、除、輸入/輸出等操作;BX稱為基地址寄存器(Base Register),可作通用寄存器用,在計算存儲器地址時,常用作基址存儲器;CX稱為計數寄存器(Count Register),常用作循環計數器;在位操作中,要用CL來指明移位的位數;DX稱為數據寄存器(Data Register)。在進行雙字的乘、除運算時,它可作為默認的操作數參與運算,也可用于存放I/O的端口地址。CS:代碼段寄存器DS:數據段寄存器SS:堆棧段寄存器ES:附加段寄存器IP:指令指針寄存器CS和IP就指示了CPU當前要讀取指令的地址幾條匯編指令 在寫一條匯編指令或一個寄存器的名稱時不區分大小寫.
物理地址 CPU通過地址總線送入存儲器的,必須是一個內存單元的物理地址.
16位結構的CPU 運算器一次最多可以處理16位的數據; 寄存器的最大寬度為16位; 寄存器和運算器之間的通路為16位.
8086CPU給出物理地址的方法 地址加法器采用“物理地址 = 段地址 * 16 + 偏移地址”的方法合成物理地址
段的概念 一個段的最大長度位64KB
CS和IP
8086CPU的工作過程可以簡要描述如下:1) 從CS:IP指向的內存單元處讀取指令,讀取的指令進入指令緩沖器;2) IP=IP+所讀取指令的長度,從而指向下一條指令;3) 執行指令,轉到步驟1,重復這個過程.
修改CS、IP的指令“jmp 段地址 : 偏移地址”指令的功能為: 用指令中給出的段地址修改CS,偏移地址修改IP.“jmp 某一合法寄存器”: 用寄存器的值修改IP.
新聞熱點
疑難解答
圖片精選