lotus

贵有恒何必三更眠五更起 最无益只怕一日曝十日寒

  博客园  :: 首页  :: 新随笔  :: 联系 :: 订阅 订阅  :: 管理

 

1. 计算机中常用的基本单位

计算机中常用的基本单位有以下几种:

  • 位(bit):是计算机中最小的数据单位,存放一位二进制数,即0或1。通常用“b”来表示。
  • 字节(Byte):是计算机中表示存储容量的最常用的基本单位。一个字节由8个二进制位组成,通常用“B”表示。一个字符占一个字节,一个汉字占两个字节。
  • 字(Word):是计算机能一次性处理数据的基本单位。字包含的二进制位数称为“字长”,现代计算机的字长通常为16、32、64位。字长是由CPU的类型所决定,不同的计算机系统的字长是不同的,字长越长,计算机一次处理的信息位就越多,精度就越高。

 

存储单位有以下几种:

  • 比特(bit):存放一位二进制数,即0或1,最小的存储单位。
  • 字节(byte):8个二进制位为一个字节,最常用的单位。一个英文字母或标点占一个字节,一个中文汉字或标点占两个字节。
  • 千字节(kilobyte,KB):1024个字节为一个千字节。
  • 兆字节(megabyte,MB):1024个千字节为一个兆字节。
  • 吉字节(gigabyte,GB):1024个兆字节为一个吉字节。
  • 太字节(terabyte,TB):1024个吉字节为一个太字节。
  • 拍字节(petabyte,PB):1024个太字节为一个拍字节。
  • 艾字节(exabyte,EB):1024个拍字节为一个艾字节。
  • 泽字节(zettabyte,ZB):1024个艾字节为一个泽字节。
  • 尧字节(yottabyte,YB):1024个泽字节为一个尧字节。

 

2.  存储单位的换算关系

  • 1 bit = 0.125 byte
  • 1 byte = 8 bit
  • 1 KB = 1024 byte
  • 1 MB = 1024 KB
  • 1 GB = 1024 MB
  • 1 TB = 1024 GB
  • 1 PB = 1024 TB
  • 1 EB = 1024 PB
  • 1 ZB = 1024 EB
  • 1 YB = 1024 ZB

 

3. JAVA 中有八种基本类型,它们的长度(以位为单位)

  • byte:8位,有符号的整数,范围是-128到127。
  • short:16位,有符号的整数,范围是-32768到32767。
  • int:32位,有符号的整数,范围是-2147483648到2147483647。
  • long:64位,有符号的整数,范围是-9223372036854775808到9223372036854775807。
  • float:32位,单精度的浮点数,范围是1.4E-45到3.4028235E38。
  • double:64位,双精度的浮点数,范围是4.9E-324到1.7976931348623157E308。
  • char:16位,无符号的字符,范围是\u0000到\uffff。
  • boolean:1位,布尔值,只有true和false两种取值。

除了八种基本类型,Java中还有引用类型,它们是指引用对象的变量,可以存储对象的内存地址。引用类型包括以下几种:

  • 类(Class):类是用户自定义的一种数据类型,可以封装属性和方法,用于创建对象。
  • 接口(Interface):接口是一种抽象的数据类型,只包含抽象方法和常量,用于规范类的行为。
  • 数组(Array):数组是一种容器类型,可以存储多个同类型的数据,按照索引访问。
  • 枚举(Enum):枚举是一种特殊的类,可以定义一组有限的常量值,用于表示某种特定的类型。

 

 

4.   二进制和文本的区别

二进制和文本的区别主要在于文件的编码方式和解释方式。简单来说:

  • 二进制文件是把内存中的数据按其在内存中的存储形式原样输出到磁盘上存放,也就是说存放的是数据的原形式。二进制文件可以用任意的编码方式来表示不同类型的数据,比如图片、音频、视频等,但是需要特定的解码器或软件来读取和显示。二进制文件通常占用较少的存储空间,但是不易于人类阅读和编辑。
  • 文本文件是把数据的终端形式的二进制数据输出到磁盘上存放,也就是说存放的是数据的终端形式。文本文件只能用字符编码来表示数据,比如ASCII、Unicode等,每个字符都有固定的位数和含义。文本文件可以用文本编辑器来打开和修改,易于人类阅读和编辑,但是占用较多的存储空间。

举例说明:

  • 如果一个文件中的内容是0100100001100101011011000110110001101111,这是一个二进制文件,它表示的是一个32位的整数1214606447,或者一个4字节的浮点数1.5113664e-13,或者其他任何你想要的含义。你需要知道这个文件的编码规则才能正确地解释它。
  • 如果一个文件中的内容是Hello,这是一个文本文件,它表示的是一个由5个ASCII字符组成的单词Hello,每个字符占8位,对应的二进制数据是0100100001100101011011000110110001101111。你可以用记事本或其他文本编辑器来打开和修改它。

将文本转换为二进制数据的一般步骤如下:

  • 选择一个字符编码,如ASCII、UTF-8、GB2312等,根据该编码的规则,将文本中的每个字符映射到一个对应的数字,如ASCII码中“A”对应65,“中”对应20013(十进制)。
  • 将每个数字转换为二进制数,如65转换为01000001,“中”转换为01001110 00101101(UTF-8编码)。
  • 将所有的二进制数连接起来,形成一个二进制字符串,如“ABC中”转换为01000001 01000010 01000011 01001110 00101101。
  • 如果需要,可以在二进制字符串之间添加分隔符,如空格、逗号等,以便于区分每个字符的边界,如“ABC中”转换为01000001 01000010 01000011 01001110 00101101。

将二进制数据转换为文本的一般步骤如下:

  • 选择一个字符编码,如ASCII、UTF-8、GB2312等,根据该编码的规则,将二进制数据分割成一个个字节(8位)或者多字节(如UTF-8中一个汉字占3个字节)。
  • 将每个字节或多字节转换为对应的数字,如01000001转换为65,“01001110 00101101”转换为20013(十进制)。
  • 根据字符编码的对照表,将每个数字映射到一个对应的字符,如ASCII码中65对应“A”,20013对应“中”(UTF-8编码)。
  • 将所有的字符连接起来,形成一个文本字符串,如“01000001 01000010 01000011 01001110 00101101”转换为“ABC中”。

 

5.   ASCII码

ASCII码是一种基于拉丁字母的字符编码,用于表示英语和其他西欧语言中的字符。它是最通用的信息交换标准,并等同于国际标准 ISO/IEC 646。ASCII码共收录了128个字符,用一个字节(8位)就可以存储,其中最高位(第8位)可以用作奇偶校验位,或者扩展为其他字符集。ASCII码中包含了大小写字母、数字、标点符号、特殊符号和一些控制字符,每个字符都有一个对应的二进制、八进制、十进制和十六进制的表示方式。ASCII码表是一个常用的查询工具,可以显示每个字符的编码和含义。

posted on 2023-07-03 19:28  白露~  阅读(1966)  评论(0编辑  收藏  举报