今天不聊天 发表于 2012-2-28 15:09:20

关于实验13第一小题的问题

本帖最后由 今天不聊天 于 2012-2-28 15:28 编辑

ASSUME CS:CODE,DS : DATA
DATA SEGMENT
DB 'WELCOME TO MASM!',0
DATA ENDS
CODE SEGMENT
START:
MOV AX,CS
MOV DS,AX
MOV SI,OFFSET SHOW
MOV AX,0
MOV ES,AX
MOV DI,200H
MOV CX,OFFSET SHOWEND-OFFSET SHOW
CLD
REP MOVSB
MOV WORD PTR ES:,200H
MOV WORD PTR ES:,0

MOV DH,10
MOV DL,10
MOV CL,2
MOV AX,DATA
MOV DS,AX
MOV SI,0
MOV AX,0B800H
MOV ES,AX
MOV AL,DH
MOV CH,160
MUL CH
MOV DI,AX
ADD DI,9*2

S:
CMP BYTE PTR ,0
JE OK
MOV AL,
MOV ES:,AL
MOV ES:,CL
INC SI
ADD DI,2
MOV BX,OFFSET S-OFFSET OK
INT 7CH

OK:
MOV AX,4C00H
INT 21H

SHOW:
PUSH BP
MOV BP,SP
DEC CX
JCXZ OK1
ADD ,BX
OK1:
POP BP
IRET
SHOWEND:
NOP
CODE ENDS
END START
——————————————————————————————————————————————————————————————————————————————————————————————————————————————
ASSUME CS:CODE,DS : DATA
DATA SEGMENT
DB 'WELCOME TO MASM!',0
DATA ENDS
CODE SEGMENT
START:
MOV AX,CS
MOV DS,AX
MOV SI,OFFSET SHOW
MOV AX,0
MOV ES,AX
MOV DI,200H
MOV CX,OFFSET SHOWEND-OFFSET SHOW
CLD
REP MOVSB
MOV WORD PTR ES:,200H
MOV WORD PTR ES:,0

MOV DH,10
MOV DL,10
MOV AX,DATA
MOV DS,AX
MOV SI,0
MOV AX,0B800H
MOV ES,AX
MOV AL,DH
MOV CH,160
MUL CH
MOV DI,AX
ADD DI,9*2

S:
CMP BYTE PTR ,0
JE OK
MOV AL,
MOV ES:,AL
MOV CL,2
MOV ES:,CL
INC SI
ADD DI,2
MOV BX,OFFSET S-OFFSET OK
INT 7CH

OK:
MOV AX,4C00H
INT 21H

SHOW:
PUSH BP
MOV BP,SP
DEC CX
JCXZ OK1
ADD ,BX
OK1:
POP BP
IRET
SHOWEND:
NOP
CODE ENDS
END START
应该把红色的指令移到后来的程序那里,这样实验13(1)才是完美的解决方案!(自认为的)嘻嘻!

今天不聊天 发表于 2012-2-28 15:24:09

解决了,原来是CX中的值有改变@!
页: [1]
查看完整版本: 关于实验13第一小题的问题