WORD数据类型数据类型及Bit,Byte,WORD,DWORD区别和联系typedef unsigned short WORD;
16位短整数,可以表⽰0-65535之间的整数
⽽char是8位。
int和机器类型有关。如16位机,就表⽰16位。32位机就表⽰32位
基本概念:
  位(Bit):“位”或“⽐特”,是计算机运算的基础;
  字节(Byte):“字节”是通过⽹络传输信息(或在硬盘或内存中存储信息)的单位。
  字节是计算机信息技术⽤于计量存储容量和传输容量的⼀种计量单位,1个字节等于8位⼆进制。
  在ASCII码中,⼀个英⽂字母(不分⼤⼩写)占⼀个字节的空间,⼀个中⽂汉字占两个字节的空间。
  符号:英⽂标点占⼀个字节,中⽂标点占两个字节。举例:英⽂句号“.”占1个字节的⼤⼩,中⽂句号“。”占2个字节的⼤⼩
  ⼀个⼆进制数字序列,在计算机中作为⼀个数字单元,⼀般为8位⼆进制数,如⼀个ASCII码就是⼀个字节.
  字(WORD),2个字节组成⼀个字。
  双字(DWORD),4个字节组成⼀个双字。
  如ANSI标准规定⼀个字符为1个字节或多个字节,UNICODE为宽字节字符串或者UNICODE字符串,规定,每个字符都占两个字节。如"中国123",ANSI编码为5字节,在UNICODE中为10字节。
Unicode和ANSI的区别就相当于输⼊法内的“全⾓”和“半⾓”的区别。
  由于不同 ANSI 编码所规定的标准是不相同的(字符集不同),因此,对于⼀个给定的多字节字符串,我们必须知道它采⽤的是哪⼀种字符集则,才能够知道它包含了哪些“字符”。⽽对于 UNICODE 字符串来说,不管在什么环境下,它所代表的“字符”内容总是不变的。Unicode 有着统⼀的标准,它定义了世界上绝⼤多数的字符的编码,使得拉丁⽂、数字、简体中⽂、繁体中⽂、⽇⽂都能⼀同⼀种编码⽅式保存。
 Bit 和Byte的区别:
⽐如:USB2.0标准接⼝传输速率480Mbps,就有⼈误解为480兆/秒,同样⽹络带宽2MB,就易误解为2兆/秒。实际上,480Mbps应为480兆⽐特/秒或480兆位/秒,它等于“60兆字节/秒”;同样,2MB,就应该是256兆字节/秒。
Bit和Byte同译为"⽐特",都是数据量度单位,bit=“⽐特”或“位”。
Byte=字节即1byte=8bits,两者换算是1:8的关系。
Mbps=mega bits per second(兆位/秒)是速率单位,所以2M带宽应该是2兆位/秒,即2MBps。
MB=mega bytes(兆⽐、兆字节)是量单位,1MB/S(兆字节/秒)=8MBPS(兆位/秒)。
通常所说的硬盘容量是40GB、80GB、100GB,这⾥的B指是的Byte也就是“字节”。
1 KB = 1024 bytesunicode文件格式
1 MB = 1024 KB = 1024*1024 bytes
1 GB = 1024 MB = 1024*1024*1024 bytes
⽐如以前所谓的56KB的MODEM换算过来56KBps除以8也就是7Kbyte,所以真正从⽹上下载⽂件存在
硬盘上的速度也就是每秒7Kbyte;也就是说与传输速度有关的B⼀般指的是Bit;与容量有关的B⼀般指的是Byte。
Bit,Byte,WORD,DWORD本质:
在Visual C++ 6.0中,BYTE与WORD,DWORD本质上都是⼀种⽆符号整型,它们在WINDEF.H中被定义,定义如下:
typedef unsigned char      BYTE;
typedef unsigned short      WORD;
typedef unsigned long      DWORD;
也就是说BYTE是⽆符号的char型(char型本质上也是⼀种1个字节的整型),WORD是⽆符号short型,DWORD是⽆符号long型。
⽽在Visual C++ 6.0中,char型长度为1字节,short型长度为2字节,int和long型长度都为4字节,因此可以认为BYTE与
WORD,DWORD定义的变量分别获得了1字节,2字节,4字节内存,正与BYTE与WORD,DWORD的字⾯意义相符。
即:BYTE=unsigned char(完全等同)
WORD=unsigned short(完全等同)        DWORD=unsigned long(完全等同)

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。