Python基础(电脑基础知识原码补码及反码)
Posted fdsimin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python基础(电脑基础知识原码补码及反码)相关的知识,希望对你有一定的参考价值。
1、计算机硬件基本知识
CPU:中央处理器,相当于人类的大脑,电脑的运算中心、控制中心(CPU越多、转速越快,电脑速度就越快)
内存:临时存取数据,程序都是在内存里运行,读取速度快,不过如果断电的话,内存里的数据都会消失
硬盘:存储空间大,可长期存储数据,价格比较便宜,速度比内存慢(固态硬盘比机械硬盘稳定,性能更好)
操作系统:统一管理计算机的硬件资源的程序
1.2、计算机文件大小单位
b=bit 位(比特)
B=byte 字节
1Byte=8bit (1B=8b)
1KB=1024B
1MB=1024KB
1GB=1024MB
1TB=1024GB
1PB=1024TB
1EB=1024PB
1.3 进制转换
二进制:由两个数字组成,(0b101)0和1,0代表低电频,1代表高电频
八进制:由八个数字组成,0-7,(0o127)
十进制:由10个数字组成,0-9 (123)
十六进制:由0-9和a,b,c,d,e,f (0xff) (字母大小写不区分,但是表示十六进制的x一般用小写,表示9后面的数字的字母一般用大写)
1.3.1 二进制转化成十进制
0b10100101-->1*2^0+0*2^1+1*2^2+0*2^3+0*2^4+1*2^5+0*2^6+1*2^7=165
从二进制的右边往左依次乘2的0次幂,依次递增
1.3.2 八进制转化成十进制
0o127-->7*8^0+2*8^1+1*8^2=87
1.3.3 十六进制转化成十进制
0xFF=15*16^0+15*16^1=255
1.3.4 十进制转化成二进制
如下图所示,将426转化成二进制,一直除以2,除断写0,没除断写1
1.3.5 八进制转化成十进制
1.3.6 十六进制转化成十进制
二进制和八进制还有十六进制可相互转换
1.4 原码、反码、补码
原码、反码和补码都是二进制数据
原码是二进制的表现形式,反码是原码取反(首位符号位不取反),补码是二进制的存贮形式
数据用补码形式存储,用原码形式显示,原码和补码通过反码互相转换,互为取反加1
用补码的原因:
用于计算器的减法运算
在二进制里,若是有符号的二进制,则是以八位来看,若是无符号的,则以七位来看, 二进制首位为1的,是负数,二进制首位为0的,是正数
如果是一个正数:原码=反码=补码
如果是一个负数:原码与反码之间,互相取反加1
原码=补码取反加1,给补码求原码
补码=原码取反加1,给原码求补码
5-3->101+111...1101=0000...010
5的原码:101
5的反码:101
5的补码:101
-3的原码:1000...011(第一个数字表示正负)
-3的反码:1111...100(反码的第一个数字表正负,不变)
-3的补码:111...1101(补码为反码加1)
以上是关于Python基础(电脑基础知识原码补码及反码)的主要内容,如果未能解决你的问题,请参考以下文章