段寄存器具有哪些值

时间:2019-05-10 11:06:08

标签: assembly x86

我似乎无法理解段寄存器存储的值。我知道

的一般定义。
  

它们用于存储代码段的起始地址,数据   段和堆栈段分别

那么CS寄存器会在代码段中存储第一条指令的最高16位吗?DS和SS寄存器在数据段和堆栈段上是否相同?


.386
.model flat,stdcall  
.stack 4090h
.data

.X DWORD 5             ;0x22345671

.code 
main proc
mov ESI,offset X        ;0x12345672

mov EAX,[ESI]           ;0x12345673

mov EBX,1               ;0x12345674

add EAX,EBX             ;0x12345675

main endp
end main

假设存储变量X的地址为0x22345671,代码段指令的范围为0x12345672-0x12345675。CS,DS,SS寄存器的值是什么?

0 个答案:

没有答案