作者kyo19830320 (CD噗罗兔)
看板Nethood
标题[问题] 将10进位数字转换为二进位的问题
时间Thu Dec 4 13:19:13 2008
因要转换成程式中要用的编码
所以要将97这个数字转换为2进位表示法
以下是我的参考网址:
http://www.math.scu.edu.tw/teacher/Chieping/number-system.html
我造上面所教的方法尝试
得以下结果
97 = 48 * 2 + 1
48 = 24 * 2 + 0
24 = 12 * 2 + 0
12 = 06 * 2 + 0
06 = 03 * 2 + 0
03 = 01 * 2 + 1
将以上得到的数字,由右至左排列得: 10001
我有问题的地方:
『因此2进位右边起第四位是 0.
且因为 1 < 2, 2进位右边起第五位是 1. 再左边其他位都是 0.』
网页中例子举的是21,以二进位表示法得10101
也就是说实际上他是00000000…"1"0101 前面都是零所以省略?
套用上述的例子,我的10001前头也必须加上00000…"1"
得1100001,但是我想要让电脑表达『97』这个数字时
必须得用"0"1100001
要多加一个零@@"
想请问问这是为什麽呢?
为什麽21用2进位表示法就是10101
而97就必须多个0,得01100001
附注:
将2进位算回10进位这个验算方法我会
我只是很纳闷为什麽表示97要特别加一个0在开头
<(ˍ ˍ)> 感谢
--
█ █ █ ◢ ◢ █ ◢█◣ █
█ █ █◢█ █ █◢█◢█ ███ █ █ █
█ █ █ █ █ █ █ █ █ █ █ ██◤ ◢██
█ █ █ █ █ █ █ █ █ █ █ █ █ █
◥███◤ █ █ █ █ █ █ █ █ █◤ ◥█◤ ███
无限有三宝:闲闲、没事、打嘴炮 http://0rz.tw/1f55p
--
※ 发信站: 批踢踢实业坊(ptt.cc)
◆ From: 140.137.17.37
※ 编辑: kyo19830320 来自: 140.137.17.37 (12/04 13:20)
1F:→ kyo19830320:囧,感觉我在钻牛角尖,但我很想将这个搞懂 12/04 13:20
2F:推 jimwayne123:要不要补0是使用的程式语言的问题吧 12/04 16:43
3F:推 CaMper8850:前面不需要特别加0啊~你是用你PO那个网页算的吗? 12/05 16:31