1)
也就是往20:0-20:3F中依次传递0-63H.
assume cs:code
code segment
mov ax,20H
mov ds,ax
mov bx,0H
mov cx,64
s:mov [bx],bl
inc bx
mov ax,4c00h
int 21h
code ends
end
注意"mov [bx],bx"的写法是错误的。与内存单元进行数据交互的只能是字层次(ah/al)。
2)
同1)
3)
No.1首先要对A,U,T指令有清晰的理解。
A->往内存中放入机器码。
U->查看内存(从CS:IP处开始)中存放的机器码。
T->使CPU读取内存中的机器码。
综上,我们得出以下结论。
U指令与T指令无关,即先执行T指令不会影响我们执行T指令后看到的结果。两者类似于查看仓库里的货物和数仓库里的货物,互不干涉。
内存中存放两种东西,机器码和数据。
No.2.要知道CS,IP值的初始值情况。
一般来说,不同情况下cs初始值不同(受电脑内存状态影响),而IP值一般为100.
而如果是经过编译,连接(效果同A),cs初始值为07E2,IP值一般为0.
复制的是代码段,共计17个字节(34位二进制),用U指令查看内存中机器码存放情况可知。