【发布时间】:2022-11-16 07:00:17
【问题描述】:
该程序假设接受两个输入的字符串,将它们连接起来,然后打印。这是我现在拥有的代码,我想知道如何去做。我还是新手,所以请多多包涵。提前致谢。
.586
.MODEL FLAT
.STACK 4096
INCLUDE io.h
.DATA
Inputstr BYTE 100 DUP (?)
Inputstr2 BYTE 100 DUP (?)
Outputstr BYTE 100 DUP (?)
prompt BYTE "Enter a string", 0
displayLbl BYTE "Concatinated string", 0
.CODE
_MainProc PROC
input prompt, Inputstr, 100
lea esi, Inputstr
lea edi, Outputstr
push esi
push edi
cld
input prompt, Inputstr2, 100
lea esi, Inputstr2
lea edi, Outputstr
push esi
push edi
cld
whileNoNul:
cmp BYTE PTR [esi], 0
je endWhileNoNul
movsb
loop whileNoNul
endWhileNoNul:
mov BYTE PTR [edi], 0
pop esi
pop edi
output displayLbl, Outputstr
mov eax, 0
ret
_MainProc ENDP
END
我的代码只打印我的第二个输出,即 Inputstr2。假设同时打印出 Inputstr 和 Inputstr2。谢谢
【问题讨论】:
-
它不对
Inputstr做任何事情:不尝试复制它,不尝试打印它。就是将Inputstr2复制到Outputstr。