实验 1 查看 CPU 和内存,用机器指令和汇编指令编程
想在 win10 上玩这个需要自己下载 DOSBox 和 debug.exe。
之后用 DOSBox 运行 debug 即可开始书中的实验。
R 命令:查看、修改寄存器
进入 debug 模式后输入 $r$ 回车后可以查看 CPU 寄存器内容。
输入
-r <寄存器名字>
则会出现 ‘:’ 可以修改对应寄存器的内容
D 命令:查看内存
可以使用如下命令查看某个地址的数据。
-d <段地址>:<偏移地址>
每行左侧是起始地址,中间会显示 $16$ 个单元的内容,右侧为对应每个单元的 ASCII 码。
E 命令:修改内存
可以用如下命令改写对应位置的内存
-e <段地址>:<偏移地址>
命令行将会依次询问从对应地址开始的每一个单元是否修改(不修改按空格否则输入要修改的内容,所有修改结束按回车键)
也可以使用如下格式
-e <段地址>:<偏移地址> <内容...>
<内容…> 部分是一些用空格间隔的 $16$ 进制数,‘‘包裹的字符,或"“包裹的字符串( 字符和字符串将存储对应的 ACSII 码)
U 命令:查看内存对应的汇编指令
-u <段地址>:<偏移地址>
此命令的显示分为三个部分。左侧为地址,中间为机器码,右侧为对应的汇编指令。
T 命令:执行 CS:IP 指向的命令
A 命令:修改汇编指令
-a <段地址>:<偏移地址>
输入该指令后命令行将会提示从给定地址开始输入汇编指令(某个地址给出后直接输入回车将停止输入)。
Next: 《Effective C++》 笔记 1. 让自己习惯 C++