找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
查看: 942|回复: 3
打印 上一主题 下一主题
收起左侧

C语言16进制移位怎么算?

[复制链接]
跳转到指定楼层
楼主

如图,假如CH0_SenData=Mod5_Work();而Mod5_Work()的值等于255,那么它右移一位的值是多少,怎么运算的?
CH0_SenData=(CH0_SenData>>1)就是这个程序。
分享到:  QQ好友和群QQ好友和群 QQ空间QQ空间 腾讯微博腾讯微博 腾讯朋友腾讯朋友
收藏收藏 分享淘帖 顶 踩
回复

使用道具 举报

沙发
ID:883242 发表于 2021-11-23 16:17 | 只看该作者
255的二进制11111111
右移1111111
是多少自己算。
回复

使用道具 举报

板凳
ID:450037 发表于 2021-11-23 16:43 | 只看该作者
Hephaestus 发表于 2021-11-23 16:17
255的二进制11111111
右移1111111
是多少自己算。

7F是吧
回复

使用道具 举报

地板
ID:983340 发表于 2021-11-23 16:47 | 只看该作者
9FA8C = 9×164 + 15×163 + 10×162 + 8×161 + 12×160 = 653964(十进制)。

从右往左看,第1位的位权为 160=1,第2位的位权为 161=16,第3位的位权为 162=256,第4位的位权为 163=4096,第5位的位权为 164=65536 …… 第n位的位权就为 16n-1。

将各个位的数字乘以位权,然后再相加,就得到了十进制形式。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

手机版|小黑屋|51黑电子论坛 |51黑电子论坛6群 QQ 管理员QQ:125739409;技术交流QQ群281945664

Powered by 单片机教程网

快速回复 返回顶部 返回列表