搜索
编程论坛
→
开发语言
→
『 C语言论坛 』
→ 位运算,除法运算和位数关系。
标题:
位运算,除法运算和位数关系。
只看楼主
Leotsing
等 级:
新手上路
帖 子:1
专家分:0
注 册:2015-5-16
结帖率:
0
楼主
已结贴
√
问题点数:20 回复次数:2
位运算,除法运算和位数关系。
比如现在
8位的变量A=1100 0000
第一种情况:进行位运算向右移4位,得到变量A1=0000 1100
第二种情况:用A除以 (2^4=16),得到变量 A2=1100
我想问的是。进行第一种情况是不是得到的A1还是8位。但是进行第二种运算,A2降低了4位。如果是这样,
我新建一个4位的变量B。我可以写 B=A/16.但可不可以写B=A>>4。它会将A的低四位保存到B吗?
搜索更多相关主题的帖子:
1100
新建
2015-05-16 08:26
TonyDeng
等 级:
贵宾
威 望:
304
帖 子:25859
专家分:48889
注 册:2011-6-22
第
2
楼
得分:10
如何理解,由机器的字元長度决定。字元,字的单元,8位机器,CPU看到的数据尺寸是8位,人类写出1100,在CPU看来,左边也有4个0,即0001100,你说A2是1100是你以人类的角度看。举个例子,数学上你说十进制的051是51是不是等价的?
别走火入魔了!大陆的教材就专钻研这种无谓的“知识”。
授人以渔,不授人以鱼。
2015-05-16 10:00
取名字
等 级:
贵宾
威 望:
21
帖 子:236
专家分:924
注 册:2015-4-27
第
3
楼
得分:10
我新建一个4位的变量B。我可以写 B=A/16.但可不可以写B=A>>4。它会将A的低四位保存到B吗?
对于B=A>>4,B得到的值是A右移4位后的值,即A高4位的值,而A的低4位值被移出,并没有保存到B中,这与B=A/16是不一样的。在实际编写中,一定要注意变量类型匹配问题,即8位的变量值不能赋值到4位的变量中。
2015-05-16 10:53
3
1/1页
1
参与讨论请移步原网站贴子:
https://bbs.bccn.net/thread-445367-1-1.html
关于我们
|
广告合作
|
编程中国
|
清除Cookies
|
TOP
|
手机版
编程中国
版权所有,并保留所有权利。
Powered by
Discuz
, Processed in 1.114133 second(s), 8 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved