首页 > 其他分享 >用二进制表示数据

用二进制表示数据

时间:2024-02-04 21:57:13浏览次数:27  
标签:表示 运算 二进制 字节 数据 十进制 移位 计算机

为何要使用二进制表示计算机信息呢?因为计算机中一个叫IC的电子部件,它有很多引脚,但这些引脚只有直流电0v或5v两个状态,也就是只能表示这两种状态,这一特性也就决定了计算机的信息数据只能用二进制数来处理,但并非说二进制是专门为IC而设计的,只是和IC的特性非常吻合。计算机处理信息的最小单位——位。

为什么二进制数的位数一般是8位、16位、32位等……?这是因为计算机所处理的信息的基本单位是8位二进制数,也就是一个字节,而字节是最基本的信息计量单位。同时值得一提的是内部和磁盘都是使用字节单位存储和读写数据的,若使用位单位则无法读写。这就是字节是信息的基本单位的原因。若字节单位处理数据时,数字小于存储数据的字节数(即小于二进制数的位数),高位就用0填补。
在程序中,使用十进制数、文字、图片等记述信息计算机也是无法区分的,程序运行时计算机内部处理也是转换成二进制数表示信息的。例子如图所示:

既然知道了二进制数在计算机运行程序中有不可或缺的作用,那么到底什么是二进制呢?若想了解二进制就需要先了解位权,位权就是(某进制)的(数的位数-1)次幂。{例如:二进制第一位是2的0次幂(=1),的二位2的1次幂(=2),第三位2的2次幂(=4)......,第八位2的7次幂(=128)。}
而二进制转化为十进制就是各数位的数值和位权相乘后再相加就完成了转换。例如00100111转化为十进制后就是39.,过程如下:

当我了解了二进制后自然要深入了解它所涉及的运算了,其实四则运算不仅在十进制适用,二进制自然也可以,只是注意逢二仅为即可,所以四则运算并非主要,二进制有自己特有的运算——移位运算,也是了解程序运行原理的关键。移位运算是将二进制数值的各数位进行左(向高位方向)右(向低位方向)移动的运算,而且一次运算中可进行多个数位的移位操作。若要运用移位运算当然要使用它特有的运算符——左移运算符(<<)和右移运算符(>>)
,使用时需记得运算符左侧是被移位的值,右侧是需要移位的位数,例如:

其中39就是被移位的值,2就是移位的位数。对于程序运行不论你使用的几进制都不必担心无法用移位运算,因为计算机内部都会将其转换成二进制数来处理,还需注意左移空出来的低位要用0补充,而溢出来的数字丢弃即可。还是给出39这一例子二进制数时是00100111若将其向左移2位就变成了10011100转换成十进制就是156。而移位运算也可以代替乘除运算,像00100111左移后结果10011100就变成了原来的4倍,而转换为十进制后156刚好是39的4倍。而对于右移后的填充有0和1两种形式至于什么时候填1或0需要知道二进制表示负数的方法,对于二进制表示负数时,一般会把最高位作为符号来使用,因此最高位又叫做符号位,当符号位为0表示正数,为1表示负数。我们还需要知道计算机是通过加法运算来实现减法运算的。这是如何实现的?这时就运用了“二进制的补数”也就是用正数来表示负数,获取补数就需要将二进制的各数位的数值全部取反,再将结果加1.所以-1的二进制数就是11111111:

标签:表示,运算,二进制,字节,数据,十进制,移位,计算机
From: https://www.cnblogs.com/G-y-l-S-j-x1-3-1-4-5-2-1/p/18005365

相关文章

  • 关于十进制转二进制
    除2取余法:不断将十进制数除以2,每次记录余数,直到商数为0为止。将所有余数从下往上排列,即可得到对应的二进制数。短除法:不断将十进制数除以2,每次记录商数的整数部分,直到商数为0为止。将所有商数的整数部分从下往上排列,即可得到对应的二进制数。递归法:1.如果十进制数为0或1,则直接......
  • 用二进制来解释数据
    数据,在我们的日常生活中无处不在。其实,数据在计算机的世界里是以二进制的形式存在的。二进制,简单来说,就是只有0和1这两种数字的系统。在计算机中,每一个0或1被称为一个位。而很多个位组合在一起,就形成了一个字节。一个字节有多少位呢?是8位。二进制的好处其实很多。首先,它很可靠,因......
  • 关于十进制转二进制
    首先介绍了十进制和二进制的基本概念,然后详细阐述了将十进制数转换为二进制数的两种常用方法:除2取余法和递归法。通过比较两种方法的优缺点,得出结论:除2取余法更适合手动转换,而递归法更适合编程实现。最后,我们通过实验数据验证了这两种方法的正确性和有效性。关键词:十进制,二进制,除......
  • 数据是用二进制数表示的
    在读过本书第二章后,我也对二进制数有了更深刻的印象,2.1向我们解释了为什么用二进制数表示计算机信息的原因,介绍了计算机的一种电子部件IC,也介绍了计算机处理信息的最小单位--位,2.2讲述了什么是二进制数,其中提到了一种思维方式,2.3讲述了移位运算和乘除运算的关系以及什么是移位运算......
  • 使用SDL库读取手柄摇杆数据
    title:aliases:tags:-cppcategory:方法stars:url:creation-time:2024-02-0420:03modification-time:2024-02-0420:13:44由于之前使用MMSystem库对手柄的数据进行读取[[2023-10-17]]的方式,在笔记本上接手柄总是出现一些虚拟手柄占用接口的问题(未找到原因......
  • SharePoint Online 使用Ajax请求超过5000条数据的列表
    前言相信大家都遇到过SharePointOnline取数据的时候,列表数据超过5000阈值的情况,下面,我们介绍下如何利用分页获取超过5000条数据的列表。正文下面是源代码,主要有两个地方要注意,一个是最开始请求top=5000,告诉请求我们要分页。第二个就是data.d.next,如果这个返回......
  • [office] 怎么将Excel单元格的数据进行拆分?Excel单元格拆分教学
    怎么将Excel单元格的数据进行拆分?相信许多小伙伴在处理一些数据的时候都需要将特殊数据进行拆分,那么我们怎么使用Excel表格拆分单元格呢?下面小编就带着大家具体看一下吧!操作方法:一、拆分被合并的单元格:方法(一): 1、首先选中要拆分的单元格,然后点击开始选项......
  • 非空处理 Java非空判断 非空处理及mysql数据库字段的not null
    1.mysql##去掉非空,如果非空又没有默认值,这样程序在添加数据的时候i,如果没有设置值就会报错。该操作很危险。##ALTERTABLE`order_test`ADDCOLUMN`test_card_name`NOTNULLVARCHAR(200)COMMENT'卡名称';##修改允许为空..ALTERTABLE`order_test`MODIFYCOLUMN`test......
  • 文件流(File Stream)是NTFS文件系统中的一个特性,它允许在一个文件中存储多个数据流。每
    文件流(FileStream)是NTFS文件系统中的一个特性,它允许在一个文件中存储多个数据流。每个数据流都可以独立地读取和写入数据,并与主数据流关联。文件流在文件系统中起到存储和管理附加属性、元数据等信息的作用。技术原理:NTFS文件系统使用文件标识符(FileID)来唯一标识每个文件。对......
  • NTFS文件系统支持透明压缩和加密功能,这些功能可以帮助用户在保护数据安全的同时降低存
    NTFS文件系统支持透明压缩和加密功能,这些功能可以帮助用户在保护数据安全的同时降低存储空间的使用。透明压缩:透明压缩是指在NTFS文件系统中对文件进行压缩操作,而用户无需感知或主动参与。通过透明压缩,文件系统可以自动将文件进行压缩,并在文件被访问时实时解压缩,以提供透明的文......