实验1 用机器指令和汇编指令编程

四、实验结论

实验一

1

法一:

 

法二:

2

法一:

 

法二:

 

3)

 

可以看到在最后一行FFFF0处,92年1月1日,如果通过E命令修改,是无效的。因为这里属于ROM部分(C0000~FFFFF),属于只读区域,写入是无效的。

 

4)

 

因为A0000~BFFFF属于显存地址空间

 

实验二

1

 

     

2)

  

① 前3行汇编指令的功能,特别是,mov sp, 10意味着什么?初始时栈顶和栈底分别是?

意味着站段大小的确定。(执行mov ss,ax 时其后边的指令将立即被执行[这是MOV SS,**指令特点]。这么规定是便于控制栈段大小,防止特别是在有子程序调用时出错。初始时的栈顶是2000:0010,栈底是2000:0012

② 基于单步调试观察到的变化,给出你对此的思考及可能原因分析。

2000:0 f 内存中,存放了CS,IP,标志寄存器

 

五、实验心得

  通过实验,对指令的使用有了一些了解。在刚开始执行命令的时候,有时候会不熟悉十六进制,会习惯性地带入十进制,因此得到的结果与自己想的结果不一致,不过在经过一次的困惑并思考了很久后,之后再也不会犯同样的错误了。

posted @ 2020-10-17 19:22  Dauntless_yin  阅读(65)  评论(2编辑  收藏  举报