我最近开始学习汇编。我正在尝试将两个32字节的字符串合并成一个预分配为64字节的最终字符串。
section .data
string1 db "static string",0
section .bss
user_inputed_string resb 32
concated_string resb 64
我试图实现字符串concated的方式,用户输入一个去第一和静态一秒:连接字符串=用户输入的字符串+字符串1
我已经在互联网上寻找解决方案,甚至没有一个似乎是NASM的有效语法。
1条答案
按热度按时间yjghlzjz1#
首先将用户输入的字符串复制到输出缓冲区。我假设它是一个以零结尾的字符串。
然后复制静态字符串,但要覆盖第一个副本中的终止零:
您可以将
mov al, [esi]
inc esi
替换为lodsb
,也可以将mov [edi], al
inc edi
替换为stosb
。