汇编语言如何横、竖、斜打印
how to print horizontally,vertically and diagonally in assembly language
我的代码是这样的
debug
a
mov cx,000a
mov ah,02
mov dl,30
int 21
inc dl
loop 0107
mov dl,0a
int 21
mov dl,0d
int 21
mov cx,0009
mov dl,20
int 21
mov dl,31
int 21
push dx
mov dl,0a
int 21
pop dx
inc dl
loop 011e
push dx
mov dl,0a
int 21
mov dl,0d
int 21
pop dx
mov cx,0009
mov dl,31
int 21
push dx
mov dl,0a
int 21
mov dl,0d
int 21
pop dx
inc dl
loop 0139
int 20
实际产量
期望的输出:
我想这应该是你程序的诀窍:
...
165B:011E CD21 INT 21
165B:0120 52 PUSH DX
165B:0121 B20A MOV DL,0A
165B:0123 CD21 INT 21
165B:0125 5A POP DX
165B:0126 FEC2 INC DL
165B:0128 E2F4 LOOP 011E
...
之后光标位于最后一行,您必须将其向上移动。您可以使用 BIOS 中断 10
的功能 02 和 03 来实现此目的
改变
165B:012A 52 PUSH DX
165B:012B B20A MOV DL,0A
165B:012D CD21 INT 21
165B:012F B20D MOV DL,0D
165B:0131 CD21 INT 21
165B:0133 5A POP DX
到
mov ah, 03
mov bh, 00
int 10
mov ah, 02
mov dl, 00
sub dh, 9
int 10
你必须调整它后面的跳跃。变化
loop 0139
到
loop 013E
我的代码是这样的
debug
a
mov cx,000a
mov ah,02
mov dl,30
int 21
inc dl
loop 0107
mov dl,0a
int 21
mov dl,0d
int 21
mov cx,0009
mov dl,20
int 21
mov dl,31
int 21
push dx
mov dl,0a
int 21
pop dx
inc dl
loop 011e
push dx
mov dl,0a
int 21
mov dl,0d
int 21
pop dx
mov cx,0009
mov dl,31
int 21
push dx
mov dl,0a
int 21
mov dl,0d
int 21
pop dx
inc dl
loop 0139
int 20
实际产量
期望的输出:
我想这应该是你程序的诀窍:
...
165B:011E CD21 INT 21
165B:0120 52 PUSH DX
165B:0121 B20A MOV DL,0A
165B:0123 CD21 INT 21
165B:0125 5A POP DX
165B:0126 FEC2 INC DL
165B:0128 E2F4 LOOP 011E
...
之后光标位于最后一行,您必须将其向上移动。您可以使用 BIOS 中断 10
的功能 02 和 03 来实现此目的改变
165B:012A 52 PUSH DX
165B:012B B20A MOV DL,0A
165B:012D CD21 INT 21
165B:012F B20D MOV DL,0D
165B:0131 CD21 INT 21
165B:0133 5A POP DX
到
mov ah, 03
mov bh, 00
int 10
mov ah, 02
mov dl, 00
sub dh, 9
int 10
你必须调整它后面的跳跃。变化
loop 0139
到
loop 013E