1.将下面的程序编译、连接,用debug加载,跟踪,然后回答问题。
(1)CPU执行程序,程序返回前,data段中的数据是多少?
0123h
(2)CPU执行程序,程序返回前,cs=,ss=,ds=?
cs=076ch,ss=076bh,ds=076ah
(3)设程序加载后,code段的段地址为X,则data段的段地址为,stack段的段地址?
X-2 X-1
2.将下面的程序编译,连接,用Debug加载,跟踪,然后回答问题。
(1)CPU执行程序,程序返回前,data段中的数据是多少?
0123h
(2)CPU执行程序,程序返回前,cs=,ss=,ds=_? cs=076ch,ss=076bh,ds=076ah
(3)设程序加载后,code段的段地址为X,则data段的段地址为_,stack段的段地址_?
X-2 X-1
(4)如果段中数据占N个字节,则程序加载后,该段实际占有的空间为 [(n+15)/16]*16。
3.将下面的程序编译、连接,用debug加载,跟踪,然后回答问题。
(1) CPU执行程序,程序返回前,data段中的数据是多少?
0123h
(2)CPU执行程序,程序返回前,cs=,ss=,ds=_? cs=076ch,ss=076bh,ds=076ah
(3)设程序加载后,code段的段地址为X,则data段的段地址为_,stack段的段地址_?
X-2 X-1
4. 如果将1,2,3题中的最后一条伪指令end start
改为end
,那个程序仍可以继续执行?
1和2不能正确执行,反汇编出来的代码并不是我们之前输入的,3因为ip=0,可以。
5.程序如下,编写code段中的代码,将a段和b段中的数据一次相加,将结果存到c段中。
补全后的代码
用debug进行汇编
6.程序如下,编写code段中的代码,用push指令将a段中的前八个字型数据存储到b段中
debug进行汇编
(好像功能没有实现…)
posted on 2018-11-24 16:35 阅读( ...) 评论( ...)