assembly - 如何编写用于在 MARIE 上打印姓名的子程序
问题描述
准备一个名为 printStringName 的 MARIE 子例程,它可以打印包含两个以 ASCII '0' 结尾的字符串的任何名称(使用“输出”指令)。首先使用包含名称字符串起始地址的标签“PrintName”(如上例中的 myNameAdd)。然后代码应该从该地址加载一个字符,如果它不是'0'则输出它,然后将地址加1,并继续这样做直到从地址加载的字符为'0'(这表示结束字符串)。然后,打印一个ASCII“空格”字符,并继续打印名称字符串的第二部分,即姓氏,直到从地址加载的字符为“0”(表示字符串结束)。然后,当您加载标记“名称结尾”的第二个 ASCII '0' 时,打印一个 ASCII“换行”字符并继续打印下一个名称。
JnS Print
Halt
Print, HEX 2
PrintString, LoadI PrintName
Skipcond 800
JumpI Print
Output
Clear
Load PrintName
Add Increment
Store PrintName
Clear
Jump PrintString
PrintName, DEC 0
HEX 043
HEX 048
HEX 045
HEX 041
HEX 048
HEX 030
HEX 030
HEX 030
Increment, DEC 1
Load PrintName
Store Print_Arg
JnS Print
Halt
PrintName, hex 04A
Print_Arg, DEC 0
Print, Hex 0
Load Print_Arg
Output
Skipcond 000
JumpI Print
Output
Clear
Load PrintName
Add Increment
Store PrintName
Clear
Jump 0
Increment, DEC 1
代码不断重复,我不确定是什么问题
解决方案
推荐阅读
- dataframe - 如何在pyspark数据框中创建包含列表值总和的列
- postgresql - 来自 kafka-connect 的 Postgres 复制槽已满
- python - 从 Python 中的 Dataframe 中的单个列获取唯一值
- javascript - 无法从 Storybook 中的 Vuex 商店读取
- c# - 应用 TextWrapping 后如何获得具有内联元素支持的 TextBlock 行?
- spring-boot - 使用代理进行 Springboot 协议测试
- javascript - 按钮 2 显示与按钮 1 显示相同的文本
- php - 如何将页面分配给子页面
- css - 如何在标题中添加图像而不是图标反应原生元素
- c++ - C ++从2个不同的向量中删除shared_ptr