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
Assembly 如何在AVR汇编语言中反转字符串_Assembly_Avr - Fatal编程技术网

Assembly 如何在AVR汇编语言中反转字符串

Assembly 如何在AVR汇编语言中反转字符串,assembly,avr,Assembly,Avr,所以我必须在cseg中使用如下的字符串 msg1_p: .db "Potato", 0 msg2_p: .db "Paramer", 0 我试图编写一个子程序,调用时,反转每个字符串,并将反转后的字符串分别存储在msg3\u p和msg4\u p中 以下是我提出的算法: reverse_string: push msg1_p unto stack letter by letter pop of msg1_p letter by letter and store in msg3_p pu

所以我必须在cseg中使用如下的字符串

msg1_p: .db "Potato", 0 
msg2_p: .db "Paramer", 0
我试图编写一个子程序,调用时,反转每个字符串,并将反转后的字符串分别存储在
msg3\u p
msg4\u p

以下是我提出的算法:

reverse_string:

push msg1_p unto stack letter by letter

pop of msg1_p letter by letter and store in msg3_p

push msg2_p unto stack letter by letter

pop of msg2_p letter by letter and store in msg4_p

return form subroutine
唯一的问题是我不知道如何实现这种汇编语言。
我真的很感谢你在这方面的帮助。我使用的是AVR studio 4 atmeg2560 AVR模拟器。谢谢你

AVR指令集手册肯定会对如何操作堆栈有所帮助吗?@Michael我对组装非常陌生,遗憾的是我不擅长组装。相信我,我已经阅读了手册和无数其他资源。不管我怎么做,它都不起作用。如果您尝试使用实际的2560助记符,那么将比显示此伪代码更有效率。