关于那些第七章中的实验,怎么验证是否执行了呢?
比如那个首字幕大写的实验,我再怎么查看呢,一下是个缩减的,我怎么看最后‘i’‘d’‘d’是否编程IDD了呢assume cs:codesg,ds:datasg
datasg segment
db '1.ibm '
db '2.dec '
db '3.dos '
datasg ends
codesg segment
start: mov ax,datasg
mov ds,ax
mov bx,0
mov cx,3
s: mov al,
and al,11011111b
mov ,al
add bx,16
loop s
mov ax,4c00h
int 21h
codesg ends
end start
先纠正你程序中的一个错误, add bx,16应该为add bx,8
想要查看结果是否正常运行是叫简单的:
1、编辑好程序后,在masm下的bin目录中编译asm程序ml ts7.asm,这里假设文件名为ts7.asm
2、命令行模式下,debug ts7.exe
3、用t命令单步执行程序,mov ds,ax这句指令执行后查看下ds的值,附件中截图是1463h,因此用d命令查看下d 1463:0,这里就能看到数据段的内容;
4、然后继续t命令单步执行程序,到程序运行到mov ax,4c00h的时候,在用d命令查看d 1463:0,这个时候你能看到几个字母发生变化了,具体看rar中的截图。
d ds:0
fujian810 发表于 2012-6-23 21:02 static/image/common/back.gif
先纠正你程序中的一个错误, add bx,16应该为add bx,8
想要查看结果是否正常运行是叫简单的:
1、编辑好程 ...
bx,是16位的啊,为什么不行呢,bl是8位啊 Sky1991 发表于 2012-6-23 21:27 static/image/common/back.gif
bx,是16位的啊,为什么不行呢,bl是8位啊
这时因为:db '1.ibm ','1.ibm '占8个byte,即ibm中i的存储地址同dec中d的偏移地址相差8,因此偏移地址加8,跟bl是否为8位毫无关系。
fujian810 发表于 2012-6-23 22:44 static/image/common/back.gif
这时因为:db '1.ibm ','1.ibm '占8个byte,即ibm中i的存储地址同dec中d的偏移地址相差8,因此偏移地 ...
哦~~谢谢:loveliness:,那如果我后面的空格(在单引号内的)加上前面的字符一共16位的话,这里就是16了,是嘛? Sky1991 发表于 2012-6-24 09:10 static/image/common/back.gif
哦~~谢谢,那如果我后面的空格(在单引号内的)加上前面的字符一共16位的话,这里就是16了, ...
对头,恭喜你会举一反三了 V2012 Build0601
页:
[1]