鱼C论坛

 找回密码
 立即注册
查看: 5264|回复: 13

王爽汇编实验二中为什么2000:0~2000:f中的内容会发生改变的问题

[复制链接]
发表于 2020-2-15 21:56:52 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 xlr123 于 2020-2-15 22:04 编辑

显示出的073F和0108我知道是寄存器CS和IP中的数据,但是01A3是啥呀,我看到有人说是标志寄存器中的值,然后去翻了翻关于标志寄存器的介绍,还是不知道01A3是怎么得出来的啊...坐等大神解答!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-2-15 21:57:55 | 显示全部楼层
本帖最后由 xlr123 于 2020-2-15 22:01 编辑

。。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2020-2-15 22:00:18 | 显示全部楼层
-d 2000:0 f
2000:0000 00 00 00 00 00 00 00 20-00 00 08 01 3F 07 A3 01
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-15 22:56:26 | 显示全部楼层
发代码
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-16 11:49:26 | 显示全部楼层
mov ax,2000
mov ss,ax
mov sp,10
mov ax,3123
push ax
mov ax,3366
push ax
用e命令将2000:0~2000:f 内存单元中的值设置为0
然后用t命令执行mov ax,2000
mov ss,ax
mov sp,10后再用d命令查看2000:0~2000:f 内存单元中的值,发现内容改变了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-16 12:04:57 | 显示全部楼层
xlr123 发表于 2020-2-16 11:49
用e命令将2000:0~2000:f 内存单元中的值设置为0
然后用t命令执行mov ax,2000
mov ss,ax

debug调试器的工作依赖中断机制,中断机制需要使用栈
继续往后学吧,后面解释过了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-16 13:18:02 | 显示全部楼层
1.png


我又仔细研究了一下,发现这个不是flag寄存器
至于这玩意是什么,我也不清楚,但可以肯定不是flag寄存器的值
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2020-2-17 13:09:32 | 显示全部楼层
人造人 发表于 2020-2-16 13:18
我又仔细研究了一下,发现这个不是flag寄存器
至于这玩意是什么,我也不清楚,但可以肯定不是flag寄 ...

好的,万分感谢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-17 22:32:32 | 显示全部楼层
mov ax,2000H   设置ax2000H  
mov ss,ax         设置栈地址等于2000H
mov sp,10        设置栈底等于10H
mov ax,3123    设置ax等于3123H
push ax           3123H入栈  位置在2000:E-F 栈底等于E
mov ax,3366    设置ax等于3366H
push ax           3366H入栈,位置在2000:C-D  栈底等于C
所以没有错啊!你说的错误是什么
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-17 22:51:43 | 显示全部楼层
yjcoke 发表于 2020-2-17 22:32
mov ax,2000H   设置ax2000H  
mov ss,ax         设置栈地址等于2000H
mov sp,10        设置栈底等于10 ...
所以没有错啊!你说的错误是什么

他有说错误吗?
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-18 16:36:19 | 显示全部楼层
人造人 发表于 2020-2-16 12:04
debug调试器的工作依赖中断机制,中断机制需要使用栈
继续往后学吧,后面解释过了

谢谢大佬
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-24 19:37:59 | 显示全部楼层
你不是废话吗。debug是16进制,你代码用十进制,位置都不一样
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-24 22:47:40 | 显示全部楼层
kankan
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-2-25 13:20:10 | 显示全部楼层
xlr123 发表于 2020-2-16 11:49
用e命令将2000:0~2000:f 内存单元中的值设置为0
然后用t命令执行mov ax,2000
mov ss,ax

感觉这个01A3像是栈顶标志一样的。你每push一个数,这个值会自动往上移动
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-12-25 01:15

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表