Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/assembly/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Loops 如何在汇编语言中使用while循环将字符串显示10次?_Loops_Assembly_While Loop - Fatal编程技术网

Loops 如何在汇编语言中使用while循环将字符串显示10次?

Loops 如何在汇编语言中使用while循环将字符串显示10次?,loops,assembly,while-loop,Loops,Assembly,While Loop,如何在汇编语言中显示字符串10次? 这是我的密码 输出为: 我想将该字符串显示10次,但字符串会相减?? 如何显示10次??? 要多次显示同一文本,请选择与执行输出所需的寄存器不同的计数器寄存器(在您的情况下是AX和DX)。我建议把计数器放在CX中 mov cx, 11 while_: dec cx ;Change counter jz end_while ;Exit after 10 iterations mov ah, 9

如何在汇编语言中显示字符串10次?

这是我的密码

输出为:

我想将该字符串显示10次,但字符串会相减?? 如何显示10次???

要多次显示同一文本,请选择与执行输出所需的寄存器不同的计数器寄存器(在您的情况下是
AX
DX
)。我建议把计数器放在
CX

    mov  cx, 11
while_:
    dec  cx           ;Change counter
    jz   end_while    ;Exit after 10 iterations
    mov  ah, 9
    int  21h          ;Print string
    jmp while_        ;Loop back
end_while:
因为while循环首先测试条件,所以我分配了11
您是否可以在代码中添加注释,为什么要编写这些说明,以及您认为它们在做什么?(如何显示10次:只需调用DOS服务以正确的参数显示字符串10次)int 21h/ah=9不读取,它写入了一个由DS:DX@Michael Petc tnx指向的
$
终止字符串这是我的一个小错误,但请帮助我在10次内获得该字符串谢谢这不是一个小错误,几乎所有的注释和说明都不匹配。甚至不足以给你一些提示和修复1-2件事情,这些代码正在做一些完全不同的事情。尝试修复所有注释以描述代码正在执行的操作,使用google查看
int 21h
DOS服务执行的操作,并使用《英特尔指令参考指南》查看特定指令执行的操作。阅读一些组装教程/书籍。(唯一稍微正确的注释是第一个“字符串输出”)
mov dx,0   ;dx counts characters
    mov  cx, 11
while_:
    dec  cx           ;Change counter
    jz   end_while    ;Exit after 10 iterations
    mov  ah, 9
    int  21h          ;Print string
    jmp while_        ;Loop back
end_while: