Assembly 如何在AVR汇编语言中反转字符串
所以我必须在cseg中使用如下的字符串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
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助记符,那么将比显示此伪代码更有效率。