0160-16位寄存器
2023-08-13 21:52 作者:jiangbo4444 | 我要投稿
環(huán)境
Time 2022-11-07
WSL-Ubuntu 22.04
QEMU 6.2.0
NASM 2.15.05
前言
說明
參考:《x86匯編語言:從實模式到保護模式》李忠
參考:https://wiki.osdev.org/CPU_Registers_x86
目標
了解 16 位寄存器,了解尋址方式。
通用目的寄存器
前面講的八個八位的寄存器,其中 H 代表高位,L代表地位,兩位組合成為一個十六位的寄存器。

先可以只認識 AX, BX, CX 和 DX 四個寄存器,其余的后面來看。
指令指針寄存器
IP(Instruction Pointer)表示指令的指針寄存器,在 8086 上可以查看 PC 寄存器,即程序計數(shù)器。
段寄存器

可以先認識代碼段 CS 和數(shù)據(jù)段 DS。
尋址方式
8086 尋址通過 IP 和 CS 來完成,CS 表示代碼段地址,DS 是數(shù)據(jù)段地址,IP 是偏移地址。 真實的物理地址是段寄存器乘以 16 加上偏移地址,16 位地址最大尋址 64K,加上向左移動 4 位,最大 1M。
大小端
當有十六位寄存器存在的時候,就需要考慮字節(jié)的存放情況,intel 架構(gòu)是將低字節(jié)放到低內(nèi)存地址,高字節(jié)放到高內(nèi)存地址。 這種情況稱為小端序,如果是反過來,則稱為大端序。
總結(jié)
介紹了 CPU 的十六位寄存器,了解了指令執(zhí)行的時候的尋址方式,了解什么是大小端存儲。
附錄
標簽: