寄存器:
一、 cs、ip
cs:段寄存器
ip:地址偏移寄存器 程序执行时自增长
1.修改方法
例子: jmp 2ae3:3 cs=2ae3 ip=3
-----------------------------------------------------------------------
jmp 合法寄存器
jmp ax ax=1000h ip=1000h;cs不变
-----------------------------------------------------------------------
二、ds和[address]
ds:通常存放要访问数据的段地址
不支持直接数据送入段寄存器中
三、栈寄存器 ss:sp
Mark:栈段中的SP数据初始化应该怎么算?
堆栈的大小如何初始化?
sp初始化 的时候指向堆栈中的最后一个元素的下一个元素
出问题 覆盖数据单元 所以要小心使用 栈空间大小跟
ss:sp 栈顶地址
push 入栈的时候 sp-2 一个字
pop 出栈sp+2
================================================
Mark:数据段、堆栈段如果声明了,大小如何定义?
不可能是个段我就声明64K吧。
转载于:https://blog.51cto.com/cobbage/975456