一、定义

在VC6.0的Microsoft Visual Studio/VC98/Include/windef.h 里,定义了BYTE,WORD,DWORD

typedef unsigned long       DWORD;

typedef unsigned char       BYTE;

typedef unsigned short      WORD;

即:

BYTE:8位

WORD: 16位

DWORD: 32位

二、Window 宏

1.LOBYTE( 从给定16位值中提取低位字节)

BYTE LOBYTE(

WORD wValue  // value from which low-order byte is retrieved

);

#define LOBYTE(w)   ((BYTE) (w))

如:WORD w=-0x1234;//w在内存中以补码形式存储:0xedcc,即0xcc(低地址) 0xed(高地址)

printf("w的低位字节:%x/n",LOBYTE(w));//输 出:w的低位字节:cc

2.HIBYTE( 从给定16位值中提取高位字节)

BYTE HIBYTE(

WORD wValue  // value from which high-order byte is retrieved

);

#define HIBYTE(w)   ((BYTE) (((WORD) (w) >> 8) & 0xFF))

如:printf("w的高位字节:%x/n",HIBYTE(w));// 输出:w的高位字节:ed

3.LOWORD(从给定32位值中提取低位word)

WORD LOWORD(

DWORD dwValue  // value from which low-order word is retrieved

);

#define LOWORD(l)   ((WORD) (l))

如: DWORD l = 0x12345678;//l在内存中存储为:0x78,0x56,0x34,0x12

printf("l的低位字:%x/n",LOWORD(l));// 输出:l的低位字:5678

4.HIWORD(从给定32位值中提取高位word)

WORD HIWORD(

DWORD dwValue  // value from which high-order word is retrieved

);

#define HIWORD(l)   ((WORD) (((DWORD) (l) >> 16) & 0xFFFF))

如:printf("l的高位字:%x/n",HIWORD(l));//输出:l的高位字:1234

5.MAKEWORD(将两个给定的无符号字符值连接成为一个16位整数)

WORD MAKEWORD(

BYTE bLow,  // low-order byte of short value

BYTE bHigh  // high-order byte of short value

);

#define MAKEWORD(a, b) /

((WORD) (((BYTE) (a)) | ((WORD) ((BYTE) (b))) << 8))

如: BYTE bLow=0x34,bHigh=0x12;

printf("MAKEWORD(%x,%x)=%x/n",bLow,bHigh,MAKEWORD(bLow,bHigh));

输出结果为: MAKEWORD(34,12)=1234

6.MAKELONG(将两个给定的16位值连接成为一个32位整数)

DWORD MAKELONG(

WORD wLow,  // low-order word of long value

WORD wHigh  // high-order word of long value

);

#define MAKELONG(a, b) /

((LONG) (((WORD) (a)) | ((DWORD) ((WORD) (b))) << 16))

如:WORD vLow=0x5678,vHigh=0x1234;

printf("MAKELONG(%x,%x)=%x/n",vLow,vHigh,MAKELONG(vLow,vHigh));

输出结果:MAKELONG(5678,1234)=12345678

BYTE WORD DWORD相关推荐

  1. BYTE,WORD,DWORD的大小及一些特殊的高低位宏(取高位 取低位)

    一.定义 在VC6.0的Microsoft Visual Studio/VC98/Include/windef.h 里,定义了BYTE,WORD,DWORD typedef unsigned long ...

  2. Bit,Byte,Word,Dword,Qword

    八个比特(Bit)称为一个字节(Byte),两个字节称为一个字(Word),两个字称为一个双字(Dword),两个双字称为一个四字(Qword). [转载] 32位和64位CPU.操作系统的区别 + ...

  3. bit,Byte,Word,DWORD(DOUBLE WORD,DW)

    1个二进制位称为1个bit,8个二进制位称为1个Byte,也就是1个字节(8位),2个字节就是1个Word(1个字,16位),则DWORD(DOUBLE WORD)就是双字的意思,两个字(4个字节/3 ...

  4. ARM64 BYTE/WORD/DWORD/QWORD 与 Wn/Xn

    BYTE,1个字节,8位,一般用Wn存储 WORD,2个字节,16位,一般用Wn存储 DWORD,4个字节,32位,一般用Wn存储 QWORD,8个字节,64位,一般用Xn存储

  5. WORD数据类型数据类型及 Bit,Byte,WORD,DWORD区别和联系

    typedef unsigned short WORD; 16位短整数,可以表示0-65535之间的整数 而char是8位. int和机器类型有关.如16位机,就表示16位.32位机就表示32位 基本 ...

  6. 汇编BYTE,WORD,DWORD区别

    BYTE为1字节, WORD为2字节, DWORD为4字节

  7. 类型BYTE,WORD与DWORD

    做程序最烦人的就是碰到,程序没什么语法错误,编译通过,运行也通过,就是不出结果的情况.昨晚晕晕乎乎的搞了三个小时,没搞出来的程序,就刚才一小会的功夫就看出来了,原来是数据类型搞错了.本来该是DWORD ...

  8. 计算器中,Byte,Word, Dword, Qword

    HEX :十六进制 Hexadecimal DEC :十进制 Decimal OCT :八进制 Octal BIN :二进制 Binary 1.MC:清除存储器中的数值. Memory Clear 2 ...

  9. 位,字节和字区别(bit,byte,word)

    位(bit)是计算机中最小(基本)的单位,是个二进制位(二进制表示:0或者1) 一个字节(byte)等于8位二进制位(bit) 1Byte=8Bit (二进制表示:00000001) 机器字长(Wor ...

最新文章

  1. 谷歌李飞飞:我们依旧站在人工智能研究的起点
  2. Error: unterminated string literal。通常原因是输出字符str中包含换行符导致的。
  3. dockerfile COPY ADD 命令
  4. linux tar 提示 time stamp xxx in the future 解决方法
  5. 开源框架完美组合之Spring.NET + NHibernate + ASP.NET MVC + jQuery + easyUI 中英文双语言小型企业网站Demo项目分析
  6. C#——自定义泛型链表DEMO
  7. android 代码 截取屏幕,如何以编程方式在Android上截取屏幕截图?
  8. python的开发环境有哪些系统_Win10下配置机器学习python开发环境
  9. C语言正则表达式regex
  10. 网约车司机无证最低罚款拟从10000元降至200元
  11. 转:mysql show processlist命令 详解
  12. 初级计算机课,教学ppt课件计算机初级培训.ppt
  13. from PyQt4 import QtGui,QtCore出错
  14. win7蓝牙热点自动断开
  15. HarmonyOS 系统架构
  16. velodyne16驱动调试记录
  17. FPGA mpsoc vitis SDK PMU-FW is not running, certain application may not be supported
  18. 万字拆解自嗨锅:造价近百万的直播间,是单场直播GMV破100万的法门吗?
  19. SAP中使用LSMW批量导入总账科目
  20. Day2快捷键+简单Dos命令

热门文章

  1. UltraISO打开Ubuntu镜像ISO文件只有EFI文件夹
  2. Win11删除EFI分区
  3. 动词ing基本用法_动词 ing的用法
  4. 贝尔链CEO Vincent:让游戏玩家从趣味消费到价值收益
  5. 锐龙9 7845HX 和锐龙9 6900HX选哪个 r9 7845HX 和6900HX差距
  6. 32位和64位操作系统的最大内存计算方法
  7. 一手掌控美食新鲜“灵魂”且融汇到生活的方方面面
  8. 中国本土便利店遍地开花,7-Eleven便利店入华为何“水土不服”?
  9. 2022张宇考研基础30讲 第十三讲 常微分方程
  10. 架狗屎:聊一聊 Spring Boot 服务监控机制