微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用LC3输出?

如何解决如何使用LC3输出?

所以我一直在寻找输出在lc3中的工作方式,但是都不是很清楚。 我所知道的是,它与陷阱功能有关。 所以我只想知道如何在控制台上打印数字。

解决方法

LC3的输出陷阱将字符输出到控制台-这就是它所能做的。这是带有控制台的计算机实际的工作方式-仅字符输出。

您只能使用字符输出来打印所需的任何内容:字符串,空格,换行符,制表符,数字等...

如果要输出多位数字,该输出由多个字符组成,这些字符是单个数字字符。如果要格式化输出,则需要使用格式化字符-数字和字符串,并根据需要插入空格和换行符。

因此,对于数字输出,您需要打印任意数量的字符,以便打印该数字的数字。

从数字到字符串的转换算法通常称为itoa —从整数到ascii。他们将数字转换为从左到右或从右到左的数字字符。

从右到左的方法一次计算值mod(%)10,以便每次加一位,dos div(/)10并循环直到没有剩余(零)。但是,这些数字是向后出现的,因此必须对它们进行缓冲(缓冲)才能反转它们,以便它们可以向前出现。

从左到右的方法以最大除数10为除数(例如,对于10,000为16位数字),以这种方式一次产生一个数字,并在除以下一个数字后重复其余的数字(使用下一个较小的10的幂)。

使事情变得复杂的是,这两种方法都需要mod和div,这在LC-3中是不直接可用的,但是可以通过重复减法同时获得。

十六进制输出有点简单,因为它不需要除以10或除以10,但是确实需要相当多的小心移动(LC-3一次只能向左移一位,通过加本身)。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。