|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 gongheng 于 2011-9-27 11:43 编辑
今天照着小甲鱼老师的视频写了段代码,但是运行后老卡在循环退出之前,难道是死循环???还是我电脑的问题???
大家帮忙看看!!!
下面是debug和源程序:
=========================================================
(C)Copyright Microsoft Corp 1990-2001.
C:\>cd masm615
C:\MASM615>debug s8.exe
-r
AX=0000 BX=0000 CX=0062 DX=0000 SP=0000 BP=0000 SI=0000 DI=0000
DS=0D47 ES=0D47 SS=0D57 CS=0D5B IP=0000 NV UP EI PL NZ NA PO NC
0D5B:0000 B8570D MOV AX,0D57
-u 0d5b:0
0D5B:0000 B8570D MOV AX,0D57
0D5B:0003 8ED8 MOV DS,AX
0D5B:0005 BB0000 MOV BX,0000
0D5B:0008 B90400 MOV CX,0004
0D5B:000B BE0000 MOV SI,0000
0D5B:000E B90300 MOV CX,0003
0D5B:0011 8A00 MOV AL,[BX+SI]
0D5B:0013 24DF AND AL,DF
0D5B:0015 46 INC SI
0D5B:0016 E2F9 LOOP 0011
0D5B:0018 83C310 ADD BX,+10
0D5B:001B E2EE LOOP 000B
0D5B:001D B8004C MOV AX,4C00
-g 001d
到这里就不往下走了
========================================================
源程序:
assume cs:code,ds:data
data segment
db'ibm '
db'dec '
db'dos '
db'vax '
data ends
code segment
start: mov ax,data
mov ds,ax
mov bx,0
mov cx,4
s0: mov si,0
mov cx,3
s: mov al,[bx+si]
and al,11011111b
inc si
loop s
add bx,16
loop s0
mov ax,4c00h
int 21h
code ends
end start
=============================================================
这是运行前的数据段内存情况:
;0D57:0000 69 62 6D 20 20 20 20 20-20 20 20 20 20 20 20 20 ibm
;0D57:0010 64 65 63 20 20 20 20 20-20 20 20 20 20 20 20 20 dec
;0D57:0020 64 6F 73 20 20 20 20 20-20 20 20 20 20 20 20 20 dos
;0D57:0030 76 61 78 20 20 20 20 20-20 20 20 20 20 20 20 20 vax
|
|