首页 > 其他分享 >二进制与十进制转换

二进制与十进制转换

时间:2024-03-19 17:32:02浏览次数:24  
标签:转换 二进制 42 整数 所示 十进制 小数

目录

1、  正整数转成二进制

2、  负整数转换成二进制

3、  小数转换为二进制的方法

4、  整数二进制转换为十进制

5、若二进制补足位数后首位为1时,就需要先取反再换算

6、将有小数的二进制转换为十进制时


转成二进制主要有以下几种:

  • 正整数转二进制,
  • 负整数转二进制,
  • 小数转二进制;

1、  正整数转成二进制

        要点一定一定要记住哈:除二取余,然后倒序排列,高位补零。

        也就是说,将正的十进制数除以二,得到的商再除以二,依次类推知道商为零或一时为止,然后在旁边标出各步的余数,最后倒着写出来,高位补零就OK咧。哎呀,还是举例说明吧,比如42转换为二进制,如图1所示操作。

        42除以2得到的余数分别为010101,然后咱们倒着排一下,42所对应二进制就是101010.如图2所示更直观的表达。

        计算机内部表示数的字节单位是定长的,如8位,16位,或32位。所以,位数不够时,高位补零,所说,如图3所示,42转换成二进制以后就是。00101010,也即规范的写法为(42)10=(00101010)

2、  负整数转换成二进制

        方法:先是将对应的正整数转换成二进制后,对二进制取反,然后对结果再加一。还以42为例,负整数就是-42,如图4所示为方法解释。最后即为:(-42)10=(11010110)2

3、  小数转换为二进制的方法

对小数点以后的数乘以2,有一个结果吧,取结果的整数部分(不是1就是0喽),然后再用小数部分再乘以2,再取结果的整数部分……以此类推,直到小数部分为0或者位数已经够了就OK了。然后把取的整数部分按先后次序排列就OK了,就构成了二进制小数部分的序列,举个例子吧,比如0.125,如图5所示。

        如果小数的整数部分有大于0的整数时该如何转换呢?如以上整数转换成二进制,小数转换成二进制,然后加在一起就OK了,如图6所示。

4、  整数二进制转换为十进制

        首先将二进制数补齐位数,首位如果是0就代表是正整数,如果首位是1则代表是负整数。

        先看首位是0的正整数,补齐位数以后,将二进制中的位数分别将下边对应的值相乘,然后相加得到的就为十进制,比如1010转换为十进制,方法如图7所示。

5、若二进制补足位数后首位为1时,就需要先取反再换算

        例如,11101011,首位为1,那么就先取反吧:-00010100,然后算一下10100对应的十进制为20,所以对应的十进制为-20,方法如图8所示。

6、将有小数的二进制转换为十进制时

        例如0.1101转换为十进制的方法:将二进制中的四位数分别于下边(如图9所示)对应的值相乘后相加得到的值即为换算后的十进制。

标签:转换,二进制,42,整数,所示,十进制,小数
From: https://blog.csdn.net/Hua_TZ/article/details/136789919

相关文章

  • 数据库中利用二进制实现多个布尔属性的增删改查
    需求背景业务场景中经常需要一些布尔型的属性来标记数据状态,如果每个属性值都新增一个数据库字段来保存会造成空间上的浪费,在工作中进行建模设计时难免会想到用二进制来节省空间,以整形32位为例,去除最高位的符号位总共可以用来保存31个布尔属性值。实现细节为方便讲解,这里......
  • 【GPT概念01】生成式预训练转换器
    一、说明        本文对GPT有所描述,主要解释了GPT的重要环节:only解码器。以及这个过程中,原始数据的维度演进、变化过程。对于想知道GPT内结构的朋友能有一定帮助。二、唯一解码器模型入门—因果语言建模     ......
  • 不通过 Host 将 Serilog 转换成 ILogger
    安装SerilogpublicstaticclassLoggerExtension{publicstaticILogger<T>CreateLogger<T>(){varlogPath="log.txt";conststringoutputTemplate="[{Timestamp:yyyy-MM-ddHH:mm:ss}{Level:u3}]{Message:......
  • NAT转换及reversible参数运用
    实验PC为私网,路由器之间为公网,R2上进行NAT转换1、源NAT转换,转为1.1.1.3,在R2上:interfaceGigabitEthernet0/1 portlink-moderoute comboenablecopper ipaddress1.1.1.1255.255.255.0 natoutbound3000address-group1可以在设备上看到转换情况:其中,PC访问......
  • SWUST OJ 961: 进制转换问题
    题目描述建立顺序栈或链栈,编写程序实现十进制数到二进制数的转换。输入输入只有一行,就是十进制整数。输出转换后的二进制数。样例输入10样例输出1010参考程序#include<iostream>usingnamespacestd;#definemaxsize100voidconcersion(intn){ inta[maxsize......
  • 【SQL Server】超详细SQLServer日期转换、字符串、数学、聚合等常用函数大全(最新版)
    文章目录一、字符串函数1、获取uuid2、字符串截取3、字符串拼接4、字符串去空格5、大小写转换6、格式化数字为字符串7、字符串替换、转换8、查找与定位9、ISNULL判空取值二、日期时间函数1、获取当前日期和时间2、提取日期部分3、DATENAME(datepart,date_expr)函数,返......
  • JavaScript学习笔记3: 数据类型,运算符,类型转换
    JS数据类型,运算符,类型转换利用typeof获取数据类型数字3的类型<script>console.log("3的类型:"+typeof3);</script>浮点数<script>console.log("3.14的类型:"+typeof3.14);</script>字符串<script>console.log("'......
  • YUV与RGB转换公式(BT601、BT709、BT2020)
    1、在图像处理中经常需要对图像数据进行转换,最常见的莫过于YUV2RGB。并且这个转化在不同的标准下有不同的转化公式。2、如果公式不匹配,则会导致转换后的图像效果有偏差。3、full_range下Y\U\V的取值范围都为[0,255];limit_range(也叫part_range)下Y的取值范围为[16,235],UV的......
  • 虚函数以及类的强制转换
    虚函数类的对象模型classA{public:voidf1(){}voidf2(){}virtualvoidf3(){}virtualvoidf4(){}};classB{public:voidf1(){}voidf2(){}};classC{};intmain(){Aa;Bb;Cc;std::cout<<sizeof(a)<......
  • 代码随想录算法训练营第23天|669. 修剪二叉搜索树|108.将有序数组转换为二叉搜索树|53
    代码随想录算法训练营第23天|669.修剪二叉搜索树|108.将有序数组转换为二叉搜索树|538.把二叉搜索树转换为累加树|总结篇669.修剪二叉搜索树这道题目比较难,比添加增加和删除节点难的多,建议先看视频理解。题目链接/文章讲解:https://programmercarl.com/0669.%E4%BF%A......