Java基础:进制之间的转换,8421码,原码,反码,补码

这篇具有很好参考价值的文章主要介绍了Java基础:进制之间的转换,8421码,原码,反码,补码。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

1平时的数一般都是用十进制表示的

十进制:

12345=10000+2000+300+40+5

=1*10^4+2*10^3+3*10^2+4*10^1+5*10^0

=1*10000+2*1000+3*100+4*10+5*1

=10000+2000+300+40+5

=12345

十进制转换为其他进制:

整数除以要转换目标进制的基数,一直除完为止,再将它们的余数由下对上排列。

二进制由0,1组成,0b开头

八进制由0,1,2,3,4,5,6,7组成,0开头

十进制由0,1,2,3,4,5,6,7,8,9组成,整数默认就是十进制

十六进制由0,1,2,3,4,5,6,7,8,9,a,b,c,d,e,f组成,以0X开头

32转换为二进制

32/2=16……0

16/2=8……0

8/2=4……0

4/2=2……0

2/2=1……0

1/2=0……1

二进制:100000

32转换为八进制

32/8=4……0

4/8=0……4

八进制:40

32转换为16进制

32/16=2……0

2/16=0……2

十六进制:20

其他进制转换为十进制:

系数:每一位上的数值;基数:原进制上的数;权次幂:从右往左开始进行编号,从0开始。

其他进制转换成十进制的规律:系数乘以基数的权次幂之和。

二进制的100转换为十进制:

0b100=1*2^2+0*2^1+0*2^0

=4+0+0

=4

十进制:4

八进制的100转换为十进制:

0100=1*8^2+0*8^1+1*8^1

=64+0+0

=64

十进制:64

十六进制的100转换为十进制:

0X100=1*16^2+0*16^1+0*16^0

=256+0+0

256

十进制:256

任意进制之间的转换:

1.以十进制作为桥梁

0b100110转换为八进制:

先转换为十进制:

0b100110=1*2^5+0*2^4+0*2^3+1*2^2+1*2^1+0*2^0

=32+0+0+4+2

=38

在由十进制转换为八进制

38/8=4……6

4/8=0……4

八进制:46

2.拆分组合法

转八进制,二进制数从右往左,每三位为一组,不够的话,左边用0补齐,然后组合起来就是结果。

0b100110转换为八进制

100|110

4    |    6          46就是结果

转换为十六进制,二进制的数从右往左,每四位一组,不够的话,左边用0补齐,然后组合起来就是结果

0b100110转换为十六进制

0010|0110

  2    |    6           26就是结果

二进制和十进制的快速转换:8421码

单位的转换

1byte=8bit

1K=1024byte

1M=1024K

1G=1024M

1T=1024G

1P=1024G

二进制:

1          1          1          1           1          1           1          1

十进制:

128       64        32       16         8          4           2           1

二进制:110100,用8421码转换为十进制

0       0       1        1         0          1          0          0

                   32      16                   4

32+16+4=52

100转换为二进制:1100100

原码、反码和补码

在计算机内,符号数有三种表示法,原码、反码和补码。所有数据的运算都是采用补码进行的。原码、反码和不码是建立在二进制的基础上出现的。

7和-7

7的二进制: 00000111

-7的二进制:10000111

原码:

十进制数本身的二进制表示法,最高位为符号位。

                    符号位                   数值位

7的原码:        0                        0000111

-7的原码:        1                       0000111

反码;

正数的反码,原码一致。负数的反码,符号位不变,数值位按位取反。

                    符号位                   数值位

7的反码:        0                        0000111

-7的反码:        1                       1111000

补码:

正数的补码,反码,原码一致。负数的补码,在反码的末位加1。

                    符号位                   数值位

7的反码:        0                        0000111

-7的反码:        1                       1111001文章来源地址https://www.toymoban.com/news/detail-400340.html

到了这里,关于Java基础:进制之间的转换,8421码,原码,反码,补码的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 原码,反码,补码

            原码、反码和补码是计算机中表示有符号整数的三种不同的二进制表示形式。它们的理解和原理涉及了计算机内部整数表示的数学概念和编码规则。 十进制数 原码 反码 补码 +5 00000101 00000101 00000101 +4 00000100 00000100 00000100 +3 00000011 00000011 00000011 +2 00000010 00000010 0000001

    2024年02月15日
    浏览(39)
  • 原码,反码,补码,移码

    原码、反码、补码和移码是在计算机中表示有符号整数的方法。它们是为了处理正负数的运算和表示而设计的。下面我会逐个解释这些概念,并说明它们的使用和理解。 原码(Sign-Magnitude Representation): 原码是最简单的表示方法,其中最高位表示符号(0代表正数,1代表负数

    2024年02月08日
    浏览(35)
  • 什么是原码、反码和补码

    前言 一个数在计算机中的表示形式是二进制的话,这个数其实就叫机器数。 机器数通常是带有符号的(指有正数和负数之分),计算机用最高位存放符号,这个 bit 一般叫做符号位。 正数的符号位为 0, 负数的符号位为 1。比如,十进制中的数 +7 ,计算机字长为8位,转换成

    2023年04月09日
    浏览(36)
  • 原码、补码、反码的关系及应用场景

    是三种表示有符号整数的方法,它们之间存在一定的关系。 原码 是最基本的表示方法,即将一个数的符号位和数值位分开表示,符号位用0表示正数,用1表示负数。例如,+7的原码为00000111,-7的原码为10000111。 反码 是在原码的基础上,将负数的数值位按位取反得到的表示方

    2024年02月06日
    浏览(46)
  • C++知识精讲13 | 原码、反码和补码

    ------------------------------------------------------------------------------------------------------------------------- 观看视频ing......  12岁的少年编程者告诉你编程如此简单  ------------------------------------------------------------------------------------------------------------------------- ---------------------------------------

    2024年02月16日
    浏览(36)
  • List 3.5 详解原码、反码、补码

    本博客文章已收录至我的Java SE专栏,如需阅读其他有关博客笔记请转至该专栏下 传送门 --Java SE_程序员雨空集 目录  前言 原码 原码的示例 原码的弊端 反码 反码的示例 反码的弊端 补码 补码的示例 补码的小细节 总结 原码:十进制数据的二进制表现形式,最左边是符号位,

    2024年02月08日
    浏览(95)
  • 【007】C++数据类型之原码、补码、反码

    💡 作者简介:专注于C/C++高性能程序设计和开发,理论与代码实践结合,让世界没有难学的技术。包括C/C++、Linux、MySQL、Redis、TCP/IP、协程、网络编程等。 👉 🎖️ CSDN实力新星,社区专家博主 👉 🔔 专栏介绍:从零到c++精通的学习之路。内容包括C++基础编程、中级编程、

    2024年02月05日
    浏览(32)
  • 补码的反码加1为什么是原码?

    搞了半个小时,终于弄懂了。 16 8 4 2 1 原码 1 0 0 1 1 反码 0 1 1 0 0 补码 0 1 1 0 1 学到这里了,我们肯定知道,原码+补码 = 0,在这里也就是 = 19 + 13 = 32,溢出来的一位正好舍去了; 所以说,对啊,只要保证原码+补码 = 32(以此类推)不就好了吗! 所以,补码是 通过原码 这样得

    2024年02月10日
    浏览(32)
  • 位运算(按位与、按位或、异或、取反)以及原码、反码、补码

    目录 位运算 按位与运算符 [ ] 按位或运算符 [ | ] 异或运算符 [ ^ ] 取反运算符 [ ~ ] 移位操作 一些面试常考的位操作运算 获取二进制中最右边的1 计算机原码、反码、补码 机器数 “三码”之间的转换 计算机中为啥要用补码呢? 真数 原码 反码 补码 有了原码为什么要使用反码

    2024年02月02日
    浏览(48)
  • 【C语言趣味教程】(2) 整数类型:数据类型的概念 | 原码反码与补码 | 有符号型和无符类型 | 研究 signed char 与 unsigned char 的取值范围

      🔗 《C语言趣味教程》👈  猛戳订阅!!! 在讲解数据类型前,我们不得不先讲解一些必备的知识点,比如如何定义一个变量,数据类型的基本概念。并介绍 ASCII 码,为 char 类型的讲解做必要的铺垫。然后讲解原码反码和补码,讲解 IEEE754标准时需要这部分的知识作为基

    2024年02月15日
    浏览(44)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包