首页
社区
课程
招聘
[旧帖] [原创]十进制 二进制 十六进制转换分析 0.00雪花
发表于: 2010-6-14 23:38 2199

[旧帖] [原创]十进制 二进制 十六进制转换分析 0.00雪花

2010-6-14 23:38
2199
衣带渐宽终不悔。。。  为梦消得人憔悴。。。

    大家好  我是你们的新朋友   憔悴书生

   很多新手都不知道 十进制 二进制  十六进制 之间是怎么转换的 今天 我就陪大家一起研究下这个话题 在这里 高手可以跳过 主要针对想学而没有入门的新手朋友呵呵  毕竟我也是新手 稳固下基础 帮助别人就等于帮助自己嘛 何乐而不为呢 好了 废话不多说 下面开始分析 三种转换方式,如果有哪里分析的不好 请高手能够提出来  好让我改邪归正 O(∩_∩)O...

在计算机里,通常用一个英文字母来表示 该数的数字。

十进制数   用D来表示  比如:123D

二进制数   用B来表示  比如:10110010B

十六进制数 用H来表示  比如:32H

  我们就先讲讲 十进制 转换二进制吧。

十进制转二进制 用的是 除二取余法 大家看下面的例子:

  36D 把这个十进制数转换成 二进制数
  
        
      
      2|36(余数0)
       ----
      2|18(余数0)
       ----
      2| 9(余数1)
       ----
      2| 4(余数0)
       ----
      2| 2(余数0)
       ----
      2| 1(余数1)
       ----
         0

我们从下往上 开始把余数按顺序写出来 100100B 这个就是 十进制转换二进制的算法...

                      36D=100100B  

新手朋友可以自己随便写个 十进制的数 按这个除二取余法 算出 它的二进制数来

如果不知道算的对不对 可以用电脑自带的计算器 选科学型 算算看看你们算的对不...

十进制成功转换成了 二进制 那么 如果我们想把二进制的数转换成十进制的数呢?

还是拿上面的例子来说吧 这样有助于 更好的理解互相转换。。。

36D=100100B  如果我们不看前面 就单看一个 100100B 你知道他的十进制是多少吗?来让我们一起分析下...

100100B=1乘以2的5次方+0乘以2的4次方+0乘以2的3次方+1乘以2的2次方+0乘以2的1次方+0乘以2的0次方

0乘以2的4次方 0乘以2的3次方 0乘以2的1次方 0乘以2的0次方 以后遇到这样的数可以不用去管 因为0乘以任何数都得0嘛!

好了 我们来算下 1乘以2的5次方=32     1乘以2的2次方=4     32+4=36  也就是说 100100B=36D

十进制 怎么转换 十六进制呢?

我们要先知道 在计算机里 十六进制是怎么表示的... 0-9 跟十位数的表示方式一样  

只是后面的10、11、12、13、14、15、是用大写字母 A、B、C、D、E、F 来表示的(什么?没有16? 呵呵 别忘了 0也算一位数哦~~~)

十进制转换十六进制 其实跟 十进制转换二进制差不多 只是 除的不是2 而是16罢了...

      16|118(余数6)
        ----
      16|  7(余数7)
        ----
           0

也是从下往上写余数  76H 不知道转换成 十进制对不对。。。哈哈 不用担心 刚开始学 可以多用用计算器确定下嘛~~~反正不要钱。。。

确定无误  呵呵 118B=76H   那我们怎么在把 十六进制的数 转换成 十进制的呢...
(来回转换好麻烦哦 有计算器 为什么不用...自己手算多傻... ) - -# 难道要依靠计算器一辈子...

下面我们就来分析 十六进制 转换 十进制的过程....(其实跟二进制转换十进制差不多一样...)

76H=7乘以十六的1次方+6乘以16的0次方   结果就是... 7乘以十六的1次方=112 加上个 6乘以16的0次方=6   112+6=118

这样 我们就又把十六进制的数 76H转换成 十进制的 118D 了

(喂!!!醒醒不要睡啦!  还有两个转换就完了哦~~~ 虽然我不是唐僧...但依然要念经....)

下面就要说 十六进制转换二进制喽~~~ 他们是怎么转换的呢? 我们继续往下分析....

1101100101001011B 这写数转换成十六进制的数是多少呢? 我们来分析下...(哎!看到 01 就晕~ ~ ~ ~)

我们可以把他们 从低位到高位 四个一组排好队 1101 1001 0100 1011 ...好了 如果遇到前面不够4位 可以用0找齐....

排好队后 我们看看 每个队 代表的数是多少...

1101 1001 0100 1011
---- ---- ---- ----
D    9    4    B

得到的结果就是 1101100101001011B=D94BH

如果想知道十六进制是怎么转换成二进制的  你可以把这个反过来看嘛~~~~

还是用找上面那个例子的麻烦哈!

D94BH 我们可以把这里的每个数 都用 二进制单个表示出来 然后在放到一起....

先把D94BH 砍成 D 9 4 B    然后把每个数的二进制写出来...(什么!不会写?  那把这些数先转换成 十进制 然后转换二进制总可以了吧!)

D    9    4    B
---- ---- ---- ----
13   9    4    11
---- ---- ---- ----
1101 1001 0100 1011

这样总可以了吧.... 再不会 就去上面看看.... 实在不会就多看几次...如果还是不会....(那我陪你一起去富士康体验下高空飞翔)

   好了 就分析到这里吧 困了....如果有什么分析不好的地方 请见谅...我笨人一个 还请高手多提宝贵意见 争取自己进步快一点...

从记事本打好复制这里的 如果 有些混乱的话 请下载附件看

[课程]Linux pwn 探索篇!

上传的附件:
收藏
免费 0
支持
分享
最新回复 (10)
雪    币: 44
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
这是原创吗?
2010-6-14 23:55
0
雪    币: 54
活跃值: (75)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
3
我从来不学这个,只会用计算器
2010-6-14 23:55
0
雪    币: 43
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
不是原创? 那你去网上给我找也一模一样的吧! 现在虽然 有计算器 但是 基本的个人感觉 还是需要掌握了解的
2010-6-15 09:15
0
雪    币: 3
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
如果这个能发邀请码的话,所有学计算机的都能行。
2010-6-16 10:08
0
雪    币: 121
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
基础是根源
楼要想盖的高
基础必须打的牢
感谢楼主分享
这个很早就学过了
这辈子也忘不掉了
呵呵
2010-6-16 14:57
0
雪    币: 96
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
这有点太基础了吧
2010-6-16 15:13
0
雪    币: 12
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
对看的懂的人来说是太基础了,但是还是可以的吧。我觉得讲得还是比较详细的。
2010-6-16 15:26
0
雪    币: 6
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
9
不学计算机的也可以的,呵呵
2010-6-17 09:36
0
雪    币: 18
活跃值: (10)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
10
想起了侯捷的一句话,勿在浮沙筑高台~~~
2010-6-17 14:11
0
雪    币: 90
活跃值: (91)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
11
啊 我还以为有什么最新算法的
2010-6-17 17:07
0
游客
登录 | 注册 方可回帖
返回
//