编程论坛
注册
登录
编程论坛
→
C++教室
移位的问题
fl8962
发布于 2015-09-18 03:13, 458 次点击
左移移位代表乘以2,右移移位代表除以2. 那请教一下如何用移位实现一个数乘以10?
比如: int a=2; int b=a*10; 请问b如何用移位的方式表示?
4 回复
#2
rjsp
2015-09-18 08:53
a*10 == a*2 + a*8 吗?没什么意义吧
#3
wmf2014
2015-09-18 11:40
楼主如果发明一个以十进制为基础的cpu就可以了.
#4
fl8962
2015-09-18 13:08
回复 3楼 wmf2014
那请问二进制为基础的cpu如何运算的?十进制的运算还不是最终以二进制为基础进行处理?谁都知道最底层的运算不过就是跑01而已低电压高电压的切换,照你这个逻辑非二进制的运算还要单独设计cpu?我只是觉得既然现实中基于二进制的机械可以处理非二进制的运算,则必然有它的一套逻辑。
#5
诸葛欧阳
2015-09-18 18:17
用二进制处理其他进制需要做转换,不能直接处理
1