提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档
本文梳理汇编语言的知识点中,CPU是如何区分指令和数据相关知识点
在了解CPU如何区分指令和数据相关知识点之前,我们先看相关的debug命令
debug -u指令
debug -d指令
欲搞懂CPU是如何区分指令和数据的,我们借助dosbox进行实验即可发现
我们都知道指令内容是存储在一个真实地址,也就是物理地址上的,而物理地址由段机构寄存器和偏移地址寄存器的数值内容确定,我们借助doxbox -r命令修改相关寄存器的数据进行查看,从而确定究竟是由哪两个寄存器的数值最终确定指令的物理地址
在debug命令中,输入-r查看寄存器相关数值
再输入-t执行一条指令,发现其他的寄存器数值均未发生改变(除了主动要变化的AX),但是IP寄存器的数值发生了相关改变,那么也就是说,与命令有关的偏移地址寄存器为IP地址寄存器
那么我们再确定相关影响指令指向的段地址寄存器
观察可得,DS、ES、SS和CS的数值均为073F,和指令指向的段地址相同,那么我们便一个一个进行修改查看到底是哪个段地址寄存器在影响指令指向的地址
经过尝试可得,当修改CS寄存器时,对应的指令指向会发生变化,那么也就是说,决定指令指向地址的寄存器为CS和IP寄存器
关于数据和指令区分整理如下:
本文发布于:2024-01-28 18:55:09,感谢您对本站的认可!
本文链接:https://www.4u4v.net/it/17064393149537.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
留言与评论(共有 0 条评论) |