打印

RL和RLC

[复制链接]
874|9
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
jiahy|  楼主 | 2014-4-10 22:11 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
比方说一个两字节的数要乘以32,可以确定乘完之后,仍为2字节,都是无符号数,我看到一个程序,使用了RL和RLC来处理,看不懂,想请教,处理的原理是怎样的呢?
沙发
shimx| | 2014-4-10 22:11 | 只看该作者
本帖最后由 shimx 于 2014-4-10 22:12 编辑

楼主想问什么哈

使用特权

评论回复
板凳
jiahy|  楼主 | 2014-4-10 22:12 | 只看该作者
对高字节和低字节怎么处理?在实践中RL和RLC怎么把握?不超出范围?

使用特权

评论回复
地板
shimx| | 2014-4-10 22:13 | 只看该作者
和十进制计算一样的,只是十进制是逢10进位,二进制是逢二进位。

使用特权

评论回复
5
jiahy|  楼主 | 2014-4-10 22:14 | 只看该作者
多谢楼上,能举个例子吗?

使用特权

评论回复
6
shimx| | 2014-4-10 22:14 | 只看该作者
比如12*34=12*(3*10)+12*4;
而二进制则为1100B*100010,自然就等于1100*(1*100000)+1100*(1*10)

使用特权

评论回复
7
spark周| | 2014-4-10 22:15 | 只看该作者
而移位就是移动小数点位置,和十进制是一样的。

使用特权

评论回复
8
jiaxw| | 2014-4-10 22:15 | 只看该作者
我也遇到过类似的程序,也是被乘数乘32时,用RLC来处理。

我经过仔细体会,这条指令应用的要诀,就是,积的范围要估算好,
只要不溢出,就可大胆使用了。

我见到的应用是这样的:LCD显示程序
GB2312共有不超过8000个字符,用2字节来表示,即区位码
每个字符的字模32字节,
为了计算某个字符字模的首址,就需乘32了
而8000乘32的结果,3e800H
也就是说,要装下这些个字模数据,选用的存储器地址线至少是18位的
使用51单片机的话,可以P0 P2的基础上,再选用P1口的口线做高位地址。

在用RLC时,需准备3个字节来装积,且第3个字节有效的位只有低2位,
高6位是可预见的0!

使用特权

评论回复
9
jiahy|  楼主 | 2014-4-10 22:16 | 只看该作者
多谢楼上详细的分享,呵呵

使用特权

评论回复
10
jiahy|  楼主 | 2014-4-10 22:16 | 只看该作者
结贴了,另外谢谢各位

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

862

主题

9861

帖子

4

粉丝