实模式的寻址

希望,记录
1. nasm的数据类型
2. X86的字节顺序是小端(little-endian)
3. 寄存器的种类
4. 线性地址
 
物理内存是CPU的源泉
在实模式下,只有1M寻址,而且是线性的
概括图:
 
1. nasm的数据类型
名称 位数 定义初始化常量(.data) 定义非初始化(.bss)
byte 8 db resb
word 16 dw resw
dword 32 dd resd
qword 64 dq resq
tword 80 dt rest
oword 128 do reso
yword 256 dy
resy
 
 
2. X86的字节顺序是小端(little-endian)
 
所以,如果ax=0x5678,那么mov [0], al, mov [1], ah 与 mov [0], ax是等价的
 
3. 寄存器的种类
[16bit]
通用寄存器
AX accumulator
BX base
CX count
DX data
SP stack pointer
BP base pointer
DI  destination index
SI source index
段寄存器
CS code segment
DS data segement
SS stack segement
ES extra segment
专用寄存器
IP instruction pinter
SP stack pointer
FLAGS或PSW program status word
其实,它的英文全称已经很好描述它的用途
 
 
段寄存器与偏移地址的缺省关系:
偏移
CS EIP
SS ESP or EBP
DS EAX, EBX, ECX, EDX, EDI, ESI, 8位数或32位数
ES EDI(用于串指令)
FS  
GS  
 
 
4. 线性地址
物理地址 = 16d x 段寄存器 + 偏移地址
范围 2^20(1M)
如:
ds: 200H, bx: 100H,那么[ds:bx]=10H x 200H + 100H = 2100H
 
posted @ 2015-06-03 01:05  乾坤大挪移  阅读(357)  评论(0编辑  收藏  举报