十六进制、八进制、二进制之间的相互专换方法.pdfVIP

十六进制、八进制、二进制之间的相互专换方法.pdf

  1. 1、本文档共7页,可阅读全部内容。
  2. 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
十六进制、八进制、二进制之间 的相互专换方法 十六进制、八进制、二进制之间的相互专换方法 一、十六进制举例说明 10 进制的 32 表示成 16 进制就是:20 16 进制的 32 表示成 10 进制就是:3×16^1+2×16^0=50 编程中,我们常用的还是 10 进制.毕竟 C/C++是高级语言。 比如: int a = 100,b = 99; 不过,由于数据在计算机中的表示,最终以二进制的形式存在,所以有时候使用二进制,可以更直观地解决 问题。但二进制数太 长了。比如 int 类型占用 4 个字节,32 位。比如 100,用 int 类型的二进制数表达将是: 0000 0000 0000 0000 0110 0100 面对这么长的数进行思考或操作,没有人会喜欢。因此,C,C++ 没有提供在代码直接写二进制数的方法。用 16 进制或 8 进制可以解 决这个问题。因为,进制越大,数的表达长度也就越短。不过,为什么偏偏是 16 或 8 进制,而不其它的,诸如 9 或 20 进制呢?2、8、 16,分别是 2 的 1 次方,3 次方,4 次方。这一点使得三种进制之间可以非常直接地互相转换。 8 进制或 16 进制缩短了二进制数,但保 持了二进制数的表达特点。在下面的关于进制转换的课程中,你可以发现这一点。 二、转换 二进制转换十进制 二进制数第 0 位的权值是 2 的 0 次方,第 1 位的权值是 2 的 1 次方…… 所以,设有一个二进制数: 101100100,转换为 10 进制为:356 用横式计算 0 X2^0 + 0X 2^1 + 1X 2^2 + 0X2^3 + 0X2^4 + 1 X2^5 + 1 X2^6 + 0 X 2^7 + 1X 2^8 = 356 0 乘以多少都是 0,所以我们也可以直接跳过值为 0 的位: 1X 2^2 + 1 X2^5 + 1X 2^6 + 1X 2^8 = 356 4 + 32 + 64 + 256 =356 八进制转换十进制 八进制就是逢 8 进 1。 八进制数采用 0~7 这八数来表达一个数。 八进制数第 0 位的权值为 8 的 0 次方,第 1 位权值为 8 的 1 次方,第 2 位权值为 8 的 2 次方…… 所以,设有一个八进制数: 1507,转换为十进制为:839,具体方法如下: 可以用横式直接计算: 7 * 8^0 + 0 * 8^1 + 5 * 8^2 + 1 * 8^3 = 839 也可以用竖式表示 第 0 位 7 * 8^0 = 7 第 1 位 0 * 8^1 = 0 第 2 位 5 * 8^2 = 320 第 3 位 1 * 8^3 = 512 十六进制转换十进制 16 进制就是逢 16 进 1,但我们只有 0~9 这十个数字,所以我们用 A,B,C,D,E,F 这六个字母来分别表示 10,11,12,13,14, 15。字母不区分大小写。 十六进制数的第 0 位的权值为 16 的 0 次方,第 1 位的权值为 16 的 1 次方,第 2 位的权值为 16 的 2 次方…… 所以,在第 N (N 从 0 开始)位上,如果是是数 X (X 大于等于 0,并且 X 小于等于 15,即:F)表示的大小为 X * 16 的N 次方。 2 进制。 比如,十进制数 1234 转换成二制数,如果要一直除以 2,直接得到 2 进制数,需要计算较多次数。所以我们可以先除以 16,得到 16 进制数: 被除数 计算过程 商 余数 1234 1234/16 77 2 77 77/16 4 13 (D) 4 4/16 0 4 结果 16 进制为:0x4D2 然后我们可直接写出 0x4D2 的二进制形式:0100 1101 0010 。 其中对映关系为: 0100 -- 4 1101 -- D 0010 -- 2 同样,如果一个二进制数很长,我们需要将它转换成 10 进制数时,除了前面学过的方法是,我们还可以先将这个 二进制转换成 16 进制,然后再转换为 10 进制。 下面举例一个 int 类型的二进制数: 1110010100011011 我们按四位一组转换为 16

文档评论(0)

1636091513dfe9a + 关注
实名认证
文档贡献者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档