1k等于多少字节(1tb等于多少bit)
什么是计算机
计算机(Computer):俗称电脑,是一种能够接收和存储信息,并且按照存储在其内部的程序对海量的数据进行自动、高速的处理,然后把处理结果输出的现代化智能电子设备。计算机有很多形式,比如生活中常用的家用电脑、笔记本(MateBookXPro)、智能手机(华为P50pro)、平板电脑(MatePadPro)等等,还有生产环境中提供重要业务支持的各种服务器(Server)都算是计算机。
计算机系统组成
计算机系统组成概述
一个完整的计算机系统主要是由硬件系统和软件系统两个子系统组成,软件是运行在硬件之上,而硬件性能的好坏会决定软件的运行效率。
计算机系统正是通过软硬件的协作完成了日常工作和生活中常见的需求:看电影、听歌、购物、定外卖、打车,上网课等等。
硬件系统
计算机硬件系统主要由主机和外部设备组成。主机主要是包含中央处理器(即CPU)和内存储器。中央处理器主要由运算器和控制器组成,主要负责数据的运算以及控制其他设备的协同工作。而内存储器分为RAM和ROM,其中RAM(RandomAccessMemory)表示随机存储内存,这种存储器在断电时将会丢失其存储的内容。而ROM(ReadOnlyMemory)表示只读内存,是一种只能读出事先存储数据的固态半导体存储器。
外部设备主要包含外部存储器、输入设备、输出设备组成。常见的外存储器包含移动硬盘U盘等等。而常见的输入设备包含鼠标键盘等等,常见的输出设备包含声卡、显卡等等。每个计算机组件的IO性能也各不相同,核心组件(CPU,内存,磁盘,网卡)都遵循容量越大,IO性能越差,在后期程序优化时,通常需要考虑时间和空间的问题。
在后期排查程序的错误时还要考虑CPU负载过高、内存不足、磁盘写满、网络不通等硬件故障。
软件系统
软件的出现实现了人和计算机更好的交互,它是由开发人员采用某种编程语言(CCJavaPythonGoJavaScript等等)编写的一系列指令以及不同业务场景产生的数据组成。
通常将软件分为系统软件和应用软件系统软件驱动程序、操作系统、语言处理程序等都是属于系统软件。驱动程序是硬件厂商使用编程语言(CC)编写的程序,在使用硬件(例如打印机、显卡等等)前必须安装对应的驱动程序。操作系统是负责通过驱动程序管理硬件资源,同时给应用软件提供运行平台,目前主流的操作系统有Windows,Linux,macOS,Android,iOS。语言处理程序是用于将编程语言编写的源程序编译或者解释成对应平台的机器语言。应用软件、支付宝、淘宝、Office都是属于应用软件,它们都是运行在操作系统之上的。运行在不同操作系统之上的软件交互方式也不一样,Linux上的软件通常是使用字符界面的交互方式,运行在Windows,macOS上的软件通常是以鼠标、键盘操作的交互方式,运行在Android,iOS上的软件通常是以手势触控、语音等交互方式。
计算机底层为什么只能识别二进制
我们目前主要使用的计算机都是大规模集成电路,是采用大规模和超大规模的集成电路作为逻辑元件的。集成电路按其功能、结构的不同,可以分为模拟集成电路、数字集成电路和数模混合集成电路三大类。而我们的计算机主要是采用数字集成电路搭建的。逻辑门是数字逻辑电路的基本单元。常见的逻辑门包括与门,或门,非门,异或等等。通过逻辑门可以组合使用实现更为复杂的逻辑运算和数值运算。逻辑门可以通过控制高、低电平,从而实现逻辑运算。电源电压大小的波动对其没有影响,温度和工艺偏差对其工作的可靠性影响也比模拟电路小得多,所以相对稳定。因为数字计算机是由逻辑门组成,而逻辑电路最基础的状态就是两个开和关。所以,数字电路是以二进制逻辑代数为数学基础。二进制的基本运算规则简单,运算操作方便,这样一来有利于简化计算机内部结构,提高运算速度。但是在日常开发中,通常都会使用八进制和十六进制,因为八进制和十六进制相对于二进制表示数据更加简洁,而且一个八进制表示三个二进制,一个十六进制表示四个二进制。例如1024使用二进制表示为0b10000000000,使用八进制表示为02000,使用十六进制表示为0x400。
计算机的进制转换
进制概述
进制的定义:进制是一种计数方式,也称为进位计数法或者位值计数法,使用有限数字符号表示无限的数值,使用的数字符号的数目称为这种进位制的基数或者底数,例如十进制就是由09十个数字组成。在计算机内存中,都是以二进制的补码形式来存储数据的,生活中以十进制方式计算的数据居多,例如账户余额,开发人员的薪水等等。计算的内存地址、MAC地址等等通常都是使用十六进制表示的,Linux系统的权限系统采用八进制的数据表示的。相同进制类型数据进行运算时会遵守加法:逢R进1;减法:借1当R,其中R就表示进制。
计算机常用进制的组成、示例和使用场景
进制
组成
示例
应用场景
二进制
0,1
1010hr计算机底层数据存储形式:二进制补码
八进制
0,1,2,3,4,5,6,7
010hrLinux权限系统
十进制
0,1,2,3,4,5,6,7,8,9
129hr整数
十六进制
0,1,2,3,4,5,6,7,8,9,A,B,C,D,E,F
12f
数据的内存地址
十进制转二进制、八进制、十六进制
十进制转换二进制、八进制、十六进制可以采用短除法,即待转换的十进制数除以指定的进制(例如2,8,16),直到商数为0,求余数。
案例:十进制的101转换为二进制,计算过程如下表格所示
重复除以2
商数
余数
1012
50hr1hr502
25hr0hr252
12hr1hr122
6hr0hr62
3hr0hr32
1hr1hr12
0hr1hr然后将余数的结果从下到上串联起来的结果:1100101,即十进制的101转换为二进制的结果为1100101
案例:十进制的237转八进制,计算过程如下表格所示
重复除以8
商数
余数
2378
29hr5hr298
3hr5hr38
0hr然后将余数的结果从下到上串联的结果是355,即十进制的237转换为八进制的结果为355
案例:十进制的268转十六进制,计算过程如下表格所示
重复除以16
商数
余数
26816
16hr12hr1616
1hr0hr116
0hr1hr然后将余数的结果从下到上串联的结果是1012,即十进制的268转换成十六进制的结果是10C,因为12在十六进制中是使用C表示
二进制、八进制、十六进制转十进制
首先明确不同进制的值是如何计算的,这里以十进制和二进制为例子,阐述它们的计算过程。
十进制整数1024102411032101410010002041024
二进制整数100000000001000000000012101024
二进制、八进制、十六进制整数转十进制整数是使用按权展开法计算的,这里以二进制数据01100101为例子。从右往左开始数,如果二进制位为1,则依次用12n,n从0开始。
案例:二进制整数01100101转换为十进制整数的计算过程01100101126125122120643241101
案例:八进制整数0127转换为十进制整数的计算过程0127182281787
案例:十六进制整数0x12f转换为十进制整数的计算过程0x12f11622161f1602563215303
二进制转八进制、十六进制
二进制转八进制是按照从右往左,每3位二进制对应1位八进制,因为2的3次方等于8
案例:二进制整数11001100转八进制计算过程110011000314
二进制转十六进制是按照从右往左,每4位二进制对应1位十六进制,因为2的4次方等于16。案例:二进制整数11001110转十六进制计算过程110011100xce
八进制、十六进制转二进制
八进制转二进制是按照从右往左,每1位八进制对应3位二进制。
案例:八进制整数0127转二进制整数计算过程0127001010111
十六进制转二进制是按照从右往左,每1位十六进制对应4位二进制。
案例:十六进制整数0x12f转换为二进制整数计算过程0x12f000100101111
进制转换的工具使用
上面都是介绍了不同进制的转换过程,但是我们可以使用各种工具来完成工具的转换
Windows系统可以使用自带的计算器来实现进制转换首先在搜索栏中输入calc,然后打开程序员类型的计算器
程序员计算器界面
HEX表示十六进制DEC表示十进制OCT表示八进制BIN表示二进制
输入十进制的89,就可以查看到89的二进制、八进制和十六进制的表示方式
Linux(这里以CentOS8。4为例)中可以在终端输入bc命令启动计算器、
然后输入obase2表示以二进制的方式输出结果再输入12,输出的结果就是将十进制的12以二进制的形式输出结果是1100ibase2,obase8表示以二进制的方式输入数据,默认是十进制,以八进制的方式输出数据,当输入1100时,转换为八进制的结果就是14
计算机的字符编码和字符集
字符编码
上面说到计算机底层只能识别二进制,而我们在计算机中看到的数字、英文、中文等字符都是二进制转换之后的结果。
按照某种规则将字符存储到计算机中称为编码,编码的本质就是将字符转换为字节存储,而反过来将存储在计算机中的二进制数按照某种规则解析显示出来称为解码,解码的本质就是将存储的的字节转换为字符。字符编码(CharacterEncoding)就是一套自然语言的字符与二进制数之间的对应规则,例如ASCII字符编码中字符a对应的二进制是01100001,转换为十进制就是97
如果编码和解码的规则一样就不会出现乱码
例如使用Notepad创建文本文件,以UTF8编码存储,然后还是以UTF8编码的方式打开就不会出现乱码。
如果编码和解码的规则不一样就会出现乱码例如使用Notepad提供的编码转换工具使用ANSI编码后中文就出现了乱码。那为什么英文没有出现乱码,因为UTF8兼容ANSI(简体中文系统等价于GB2312编码)
字符集
字符集(Charset)也叫作编码表,是一个系统支持的所有字符的集合,包括各个国家的文字、标点符号、图形符号,数学符号、数字等等。
计算机要准确的存储和识别各种字符集符号,需要进行字符编码,一套字符集必然至少有一套字符集编码。常见字符集有ASCII字符集、GBK字符集、Unicode字符集等。
常用的字符集合编码
从上图可知当指定了字符集编码后,它所对应的字符集自然就指定了,因此字符集编码才是我们真正应该关心的。ASCII字符集:ASCII(AmericanStandardCodeforInformationInterchange,美国信息交换标准代码)是基于拉丁字母的一套电脑编码系统,用于显示现代英语,主要包括控制字符(回车键、退格、换行键等)和可显示字符(英文大小写字符、阿拉伯数字和西文符号)。基本的ASCII字符集,使用7位(bits)表示一个字符,共128字符。ASCII的扩展字符集使用8位(bits)表示一个字符,共256字符,方便支持欧洲常用字符。中文字符集:常用的中文字符集有GB2312,GBK,GB18030
GB2312:简体中文码表。一个小于127的字符的意义与原来相同。但两个大于127的字符连在一起时,就表示一个汉字,这样大约可以组合了包含7000多个简体汉字,此外数学符号、罗马希腊的字母、日文的假名们都编进去了,连在ASCII里本来就有的数字、标点、字母都统统重新编了两个字节长的编码,这就是常说的全角字符,而原来在127号以下的那些就叫半角字符了。
GBK:最常用的中文码表。是在GB2312标准基础上的扩展规范,使用了双字节编码方案,共收录了21003个汉字,完全兼容GB2312标准,同时支持繁体汉字以及日韩汉字等。
GB18030:最新的中文码表。收录汉字70244个,采用多字节编码,每个字可以由1个、2个或4个字节组成。支持中国国内少数民族的文字,同时支持繁体汉字以及日韩汉字等。ISO88591字符集:拉丁码表,别名Latin1,用于显示欧洲使用的语言,包括荷兰、丹麦、德语、意大利语、西班牙语等。ISO88591使用单字节编码,兼容ASCII编码。Unicode字符集:Unicode编码系统为表达任意语言的任意字符而设计,是业界的一种标准,也称为统一码、标准万国码。它最多使用4个字节的数字来表达每个字母、符号,或者文字。有三种编码方案,UTF8、UTF16和UTF32。最为常用的UTF8编码。UTF8编码,可以用来表示Unicode标准中任何字符,它是电子邮件、网页及其他存储或传送文字的应用中,优先采用的编码。互联网工程工作小组(IETF)要求所有互联网协议都必须支持UTF8编码。所以,我们开发Web应用,也要使用UTF8编码。它使用一至四个字节为每个字符编码,编码规则:128个USASCII字符,只需一个字节编码。拉丁文等字符,需要二个字节编码。大部分常用字(含中文),使用三个字节编码。其他极少使用的Unicode辅助字符,使用四字节编码。
说完了这么多你们知道字符集和字符集编码的区别了么?字符集规定了字符对应存储的二进制数,字符集编码规定了字符对应占据的存储空间。
计算机的计量单位
容量单位
在购买电脑时,通常会选择高配置的内存、硬盘。例如最新款(2021)16寸的MacBookPro已经可以选配64G内存和8T的固态硬盘,而这里的64G和8T就是常用的容量单位。
MacBookPro
在物理层面,我们使用高低电平来记录信息,通常使用高电平表示1,低电平表示0,因此在计算机底层只能认识0,1两种状态。而0,1能够表示的内容太少,迫切需要更大的容量表示方法,因此诞生了字节(Byte),千字节(KB),兆字节(MB),吉字节(GB),太字节(TB),拍字节(PB),艾字节(EB)。它们之间的换算关系如下所示1YB1024ZB1ZB1024EB1EB1024PB1PB1024TB1TB1024GB1GB1024MB1MB1024KB1KB1024B1Byte8bit
位(bit)是最小的计算机容量单位,通常用于门电路,只能存储0或者1字节(Byte)、千字节(KB)、兆字节(MB)表示网络传输,文件大小,是最基本的容量计量单位。吉字节(GB)通常用于表示计算机内存、磁盘的容量单位太字节(TB),拍字节(PB)通常是用于表示云盘、移动硬盘的容量单位艾字节(EB)通常是用于表示数据中心的容量单位
现在通常笔记本的内存通常是8G,16G,32G,64G等等,而运行在笔记本之上的操作系统普遍都是64位的,因为32位系统只能使用4G内存,下面是4G的内存换算4G222102102104102410241024232
在购买内存或者买移动硬盘时,通常使用的存储单位就是GB或者是TB,但是在买4T的移动硬盘时,实际的可用容量却只有3T多,因为计算机的存储单位是以2的10次方(即1024)换算,而硬盘厂商们是以1000为换算单位
4T的硬盘换算成位如下所示4T41024GB1024MB1024KB1024B8bit
而硬盘厂商的实际容量4T10001000100010008
因此实际的可用容量是4100010001000100010241024102410243。63T
而在一些互联网巨头(例如国内的BAT,国外的亚马逊、苹果、微软、谷歌,脸书)公司中,可能使用到比TB更大的海量数据,也就是PB或者EB,它们的换算单位如下所示。1PB1024TB1EB1024PB
速度单位网络速度网络常用的单位是Mbps而网络带宽提供商(例如长城宽带)声称的百兆带宽实际上是100Mbits,但是100M光纤测试的峰值下载速度只会有12。5MBs,它们之间的换算是100Mbits(1008)MBs12。5MBs。CPU速度CPU的速度一般是由CPU的时钟频率所体现的,而时钟频率的单位是赫兹(Hz),目前主流的CPU时钟频率一般都在2GHz以上,而赫兹(Hz)其实就是秒分之一,也就是每秒钟的周期性变动重复次数的计量。GHz即十亿赫兹(109Hz),2GHz就是二十亿赫兹,也就是说2GHz的CPU每秒可以变化20亿次。1Khz1000hz1Mhz1000khz1Ghz1000Mhz
有声阅读软件哪个好(有声读物有哪些平台)说到听书相信现在的很多人都不陌生,因为这已经成为很多人生活的一部分,毕竟大家在平时的生活中并没有多少时间去阅读或者去观看一些自己喜欢的书籍或者影视剧,而听书就变成了大家娱乐和学习的
头晕看哪个科室(头晕眩晕挂什么科就诊)大家好,我是黄钰玲医生。很多人头晕可能第一反应是挂神经内科,但是不尽然,今天我就来跟大家讲讲,不同的头晕大家可以挂什么科室第一如果从床上起者翻身或者转头时突然出现天旋地转的感觉,有
宣武是哪个(宣武永存)一牛街往事,老学校创立北京第一所双语学校的是牛街清真第一两等小学堂的创始人王浩然他还有个德高望重的身份,过去是老北京牛街礼拜寺的大阿訇,其实在历史上回族的教育就是阿拉伯文教育,在清
哪个网站可以看最新电影(长津湖2021吴京版免费观看)长津湖电影多长时间?长津湖电影是本次国庆档的热门电影,不少小伙伴都想前去观看,去看前想知道长津湖电影的时长,下面为大家带来了解答,想了解的小伙伴快来看看吧。长津湖电影多长时间一电影
S车哪个好(SWM是什么车)比宏光侠厉害,9。5万起搭1。5T6at,SWM斯威全新suv钢铁侠上市现在的车企总是喜欢给车取一个奇怪的名字,像wey喜欢用咖啡做名字,哈弗喜欢用动物做名字,而今天说的这位来自s
太仓哪个省(太仓是什么)曾因境内建立皇家粮仓,故名太仓。又因古代地属娄县,并在娄县东境,别称娄东。又因地处古代海岸线冈身之上,又称冈身。太仓滨海枕江,书经禹贡中说,属扬州之域。春秋时属吴地,吴王尝于其地置
为什么叫盐城(我们的家乡为什么叫盐城)盐城,最近度提高不少,起因是一段公公和儿媳在婚礼上的视频,引起广大网友的。盐城,是江苏省面积最大的地级市。盐城拥有江苏省最长的海岸线最大的沿海滩涂最广的海域面积。而且海域面积还在不
排卵为什么会出血(排卵期怎么有点出血)排卵期出血偶尔发生,且少量,可以观察不予处理。对有持续性排卵期出血的女生,发生在排卵期,通常会干扰受孕,在排出其他疾病后,可以用药治疗。为什么会出现排卵期出血?排卵期出血是在两次月
孤岛惊魂为什么叫远哭(孤岛惊魂别名)在2004年的今天,孤岛惊魂系列第一步作品正式发售,出自于德国工作室Crytek,后来抱了EA的大腿后,将IP留给了土豆种植厂育碧。其实,比起它的中文名,我更愿意叫FarCry,而
为什么车票不能改签(值钱不值钱打一个字)为打赢新冠肺炎疫情防控攻坚战回应旅客诉愿铁路部门先后五次出台免费退票措施和购票人须提供乘车人手机号的措施旅客朋友纷纷点赞也有一些小伙伴对火车票购票改签退票还有一些疑问小编再次整理了
为什么要剪辑(动作剪辑原则)剪辑艺术主要包括画面剪辑和声音剪辑。画面剪辑主要包括动作剪辑情绪剪辑和节奏剪辑三个部分声音剪辑主要包括对话剪辑音乐剪辑和音响剪辑三个部分。剪辑没有固定的模式和方法,但是应当遵循剪辑