BYTE WORD DWORD
来源:互联网 发布:医院网络总监 编辑:程序博客网 时间:2024/05/21 19:36
一、定义
在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
转载地址:http://blog.csdn.net/zhangyang0402/article/details/3509850
- BYTE WORD DWORD
- BYTE,WORD,DWORD
- bit byte word dword
- BYTE WORD DWORD
- byte word dword oword
- BYTE WORD DWORD
- BYTE WORD DWORD
- BYTE WORD DWORD详解
- BYTE、WORD、DWORD
- BYTE、WORD与DWORD类型
- 类型BYTE,WORD与DWORD
- VC 数据类型 BYTE WORD DWORD
- DWORD WORD BYTE 相互转换
- BYTE、WORD与DWORD类型
- BYTE、WORD与DWORD类型
- BYTE、WORD与DWORD类型
- Bit,Byte,WORD,DWORD区别和联系
- Bit,Byte,WORD,DWORD区别和联系
- 苦练代码能力--(Thinking、Coding)
- 利用ODBC把.accdb格式数据导入到SQL Server
- 【gradle】 使用 gradle 在控制台输出中文乱码解决
- java多线程实例---很有用 详细介绍
- Android开发:Service
- BYTE WORD DWORD
- linux查看指定目录下最大的10个文件
- iOS开发 - 如何使用请求头鉴权
- oss在thinkjs上传demo
- Java中的回调方法
- Postgres 主从复制搭建步骤
- 存储图片到本地、提取本地存储的图片
- 【复习题】:哈工大软件学院无线传感器网络期末考试题
- 自动车牌识别(ANPR)练习项目学习笔记2(基于opencv)