汇编语言 王爽 第四版 第六章 检测点6.1
Posted 霜序0.2℃
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了汇编语言 王爽 第四版 第六章 检测点6.1相关的知识,希望对你有一定的参考价值。
检测点6.1
1
下面的程序实现依次用内存0:0~0:15单元中的内容改写程序中的数据,完成程序:
assume cs:codesg
codesg segment
dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h;ip为0,2,4,6,8..
start: mov ax,0
mov ds,ax;ds设置为0
mov bx,0
mov cx,8;8次循环
s: mov ax,[bx]
___;填写的地方,应该填写`mov cs:[bx],ax`
add bx,2
loop s
mov ax,4c00h
int 21h
codesg ends
end start
填写mov cs:[bx],ax
,因为我们需要把0:0~0:15
复制到cs:0~cs:15
上,刚好用bx来做位移下标,字所占2字节,所以bx每次加2
2
下面的程序实现依次用内存0:0~0:15单元中的内容改写程序中的数据,数据的传送用栈来进行。栈空间设置在程序内。完成程序:
assume cs:codesg
codesg segment
dw 0123h,0456h,0789h,0abch,0defh,0fedh,0cbah,0987h
dw 0,0,0,0,0,0,0,0,0,0
start: mov ax,___;应该填cs,因为栈空间被放到了程序的开头进行声明
mov ss,ax;设置ss的值
mov sp,___;设置sp的值,应该填24h,因为前面还有8个字,即16字节,栈顶是往高位 数,而且栈里面有10个字节
mov ax,0;
mov ds,ax;ds为0
mov bx,0;bx用做下标
mov cx,8;循环8次
s: push [bx];把0:[bx]入栈
pop cs:___;这里应该赋值给cs:[bx],所以填写[bx]
add bx,2
loop s
mov ax,4c00H
int 21h
codesg ends
end start
依次填写:
cs
,24h
,[bx]
,解释在注释中
以上是关于汇编语言 王爽 第四版 第六章 检测点6.1的主要内容,如果未能解决你的问题,请参考以下文章