数的表示
通常情况下,一个数分位有符号和无符号两种类型。
如果将一个数当作有符号数处理时,则该数的最高位作为符号位。如果符号位为0,则表示该数为正数,如果符号位为1,则表示该数为负数。
对于已知位数的二进制数,它能表示的数的大小范围时有限的。如果是n为有符号二进制数,它能够表示的十进制数的范围是-2n~2n-1-1,如果是n位无符号二进制数,它能够表示的十进制数的范围是0~2n-1
例如:
8位有符号数能够表示的十进制数范围是-128~127,8位无符号数能够表示的十进制数范围是0~255;
16位有符号能够表示的十进制数范围是-32768~32767,16位无符号数能够表示的十进制数范围是0~65535;
小数一般用定点数或浮点数来表示。
原码、反码、补码
正数的原码是转换为二进制位的数,其反码、补码于原码相同
负数:
原码是其绝对值转换成二进制位然后在高位补1(负数最高位)的数;
反码是将原码的符号位除外,其余位取反;
补码是其反码的最低位加一。
信息编码
1、字符编码
西文字符编码常用的
ACSII:采用7位二进制编码,可以表示2即128个字符,占1B。
常见的ASCII码值:空格32 回车13 “A”65 “a“97 ” “0”48
还有EBCDIC(21进制交换码),用于大型机器中
2.汉字编码
汉字输入码:利用键盘输入汉字时对汉字的编码。有音码类,形码类
3.汉字国标码和区位码
国家标准汉字编码(国标码GB2312—80),称汉字交换码,简称GB码。
国标码中每个汉字用两个字节表示,每个字节最高位为0。
根据国标码编码规定,所有国标汉字和字符组成一个94*94的矩阵,每一行称为一个“区”,每一列称为一个“位”,即94个区94个列,由区号和位号共同构成区位码,将每个区和每个位分别加上20H,就构成了国标码。例如,“大”位于20区83位,其区位码为2083,十六位进制区位码表示为1453H,国标码为3473H。
国标码=区位码+2020H;
机内码=区位码+A0A0H;
4.汉字机内码
汉字机内码:汉字被计算机系统内部处理和存储而使用的编码。一个汉字国标码占两个字节,每个字节的最高位为“0”,西文字符的机内代码是7位ASCII码,最高位也是“0”。为了区分计算机内部汉字编码和ASCII码,将国标的每一个字节的最高位由“0”变成“1”,即每个字节加80H。如“大”的国标码3473H,机内码B4F3H。
机内码=国标码+8080H;
5.汉字字形码
汉字字形码又称为汉字字模,用于汉字显示输出和打印输出。汉字字形码通常有两种表现方式:点阵和矢量。
用点阵表示字形时,汉字字形指的就是这个汉字字形点阵的代码。
点阵字模所占字节数=(点阵行数*点阵列数)/8
点阵字模:不易缩放,易失真。
矢量表示方式存储的是描述汉字字形的轮廓特征。矢量化字形描述与最终汉字显示的大小、分辨率无关。
矢量字模:易缩放,不易失真。
Unicode字符集编码
Unicode是一个国际编码标准。
面前使用的Unicode版本对应UCS-2,使用16位的编码空间,最多表示216(65536)个字符,基本可以满足各种语言使用。
对Unicode的转换格式分为3种格式:UTF-8、UTF-16、UTF-32
标签:表示,编码,计算机,符号,区位码,汉字,国标码,信息 From: https://www.cnblogs.com/ao555/p/16589366.html