【问题标题】:Concatenating a few strings连接几个字符串
【发布时间】:2020-07-16 21:31:45
【问题描述】:

您对这个问题有任何想法吗?

问题:

编写并执行一个连接两个字符串的 LC-3 汇编程序。第一个字符串从内存地址 x4000 开始,第二个字符串从内存地址 x5000 开始。字符串总是以 0 结尾。

Example​:Before​ your program executes:
M[x4000] = 5 M[x5000] = 6
M[x4001] = 2 M[x5001] = 1
M[x4002] = 8 M[x5002] = 8
M[x4003] = 4 M[x5003] = 0
M[x4004] = 0

After​ your program executes:
M[x4000] = 5 M[x5000] = 6
M[x4001] = 2 M[x5001] = 1
M[x4002] = 8 M[x5002] = 8
M[x4003] = 4 M[x5003] = 0
M[x4004] = 6 M[x4005] = 1
M[x4006] = 8 M[x4007] = 0

【问题讨论】:

  • 这是 C 函数 strcat,如果您想在 C 中查找示例实现。
  • 你不知道从哪里开始。这对于我们的问答形式来说是一个困难的情况,因为我们自然不会只为您提供家庭作业的解决方案,而且,我们不知道您真正坚持的是什么,关于 LC-3 的特定问题是否注册、内存、数组、指针、循环。您可能会在 codementor.io 等指导网站找到更好的运气。
  • @ErikEidt 嘿,谢谢你的回答。我只是不知道如何连接几个字符串。我的意思是我检查了互联网,但我可以得到 lc-3 的任何解决方案
  • 如果你能在 C 中做到这一点会有所帮助。
  • 如果您需要与问答不同类型的帮助(例如指导),以了解完成此任务所需的知识,请通过 codementor.io 与我联系。

标签: string assembly string-concatenation lc3


【解决方案1】:

这里有个思路:写一个循环来定位从0x4000开始的第一个零字的地址。找到后,编写另一个循环,将单词从 0x5000 复制到该地址,并在复制零字节后终止。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-11-05
    • 1970-01-01
    相关资源
    最近更新 更多