当前位置:首页 » 服务存储 » 转换二进制方式存储
扩展阅读
webinf下怎么引入js 2023-08-31 21:54:13
堡垒机怎么打开web 2023-08-31 21:54:11

转换二进制方式存储

发布时间: 2023-03-14 20:04:17

① 以二进制形式存储在文件中.应该怎么实现

文件有两种存放方式:文本方式,二进制方式. FILE *fp=fopen("1.txt","w")这是以文本方式写文件. FILE *fp=fopen("1.txt","r")这是以文本方式读文件. FILE *fp=fopen("1.dat","wb")这是以二进制方式写文件. FILE *fp=fopen("1.dat","rb")这是以二进制方式读文件.

② 计算机内部数据的存储形式是

1.长期存储:硬盘、光盘、u盘、磁盘等。

2.临时存储:物理内存、虚拟内存、缓存和寄存器。

计算机只能识别“0”和“1”,这是由电路的逻辑决定的。电路只有两种状态:开和关。所有存储在计算机中的数据都是逻辑,或者说信息在计算机中的表示(数据)是一串“0”和“1”的组合。

1.如何存储数字?

通常我们讲的数值都是十进制的,但是计算机是以二进制的形式存储的,所以需要把十进制的数字转换成二进制的数字供计算机存储。

整数:直接转换成二进制。

负数:由于计算机不能存储负号(-),所以十进制数的存储需要使用浮点数(3.14)。

十进制:由于计算机不能存储小数点(。),对于负数(-100)的存储就需要使用补码。

2.如何存储字符

美国信息交换标准代码:美国信息交换标准代码

根据ASCII表,将每个字符对应的ASCII值转换成二进制并存储在计算机中。

3.如何存储中文?

GBK字符集(GBK是“国标”和“扩展”汉语拼音的首字母,英文名:中文内码规范)

根据GBK对应的码值,中文转换成二进制存储。

③ 二进制在计算机中如何储存

1个字节只能表示256个数,由于有符号所以就把它表示成范围:-128-127。二进制在计算机中储存方法:用最高位表示符号位,如果是0表示正数,如果是1表示负数,剩下的7位用来储存数的绝对值的话,能表示27个数的绝对值,再考虑正负两种情况,27*2还是256个数。首先定义0在计算机中储存为00000000,对于正数我们依然可以像无符号数那样换算,从00000001到01111111依次表示1到127。那么这些数对应的二进制码就是这些数的原码。到这里很多人就会想,那负数是不是从10000001到11111111依次表示-1到-127,可以没有,如果这样的话那么一共就只有255个数,因为10000000的情况没有考虑在内。实际上,10000000在计算机中表示最小的负整数,就是这里的-128,而且实际上并不是从10000001到11111111依次表示-1到-127,而是刚好相反的,从10000001到11111111依次表示-127到-1。负整数在计算机中是以补码形式储存的,补码是怎么样表示的呢,这里还要引入反码概念,反码就是把负数的原码(负数的原码和和它的绝对值所对应的原码相同,简单的说就是绝对值相同的数原码相同)各个位按位取反,是1就换成0,是0就换成1,如-1的原码是00000001,和1的原码相同,那么-1的反码就是11111110,而补码就是在反码的基础上加1,即-1的补码是11111110+1=11111111,因此可以算出-1在计算机中是按11111111储存的。
总之,计算机储存有符号的整数时,是用该整数的补码进行储存的,0的原码、补码都是0,正数的原码、补码可以特殊理解为相同,负数的补码是它的反码加1。