pre{
line-height:1;
color:#800080;
background-color:#d2c39b;
font-size:16px;}.sysFunc{color:#627cf6;font-style:italic;font-weight:bold;}
.selfFuc{color:#800080;}
.bool{color:#d2576f;}
.condition{color:#000080;font-weight:bold;}
.key{color:#000080;}
.var{color:#800000;font-style:italic;}
.Digit{color:#ff00ff;font-weight:bold;}
.includePre{color:#800080;}
.operator {color:#008000;font-weight:bold;}

 DWORD WORD BYTE 相互转换
  
  DWORD  4个字节
  WORD     2个字节
  BYTE       1个字节
 

1) DWORD--->WORD

 

    DWORD dw=0;  
      
      
    WORD hW=HIWORD(dw);  
    WORD lW=LOWORD(lw);  

2)WORD--->DWORD

 

    DWORD dw=0;  
      
      
    WORD hW=HIWORD(dw);  
    WORD lW=LOWORD(lw);  
      
      
    dw=MAKELONG(lw,hw);  

3) WORD---->BYTE

 

    WORD word=0;  
    BYTE hb=HIBYTE(word);  
    BYTE lb=LOBYTE(word);  

4)BYTE------>WORD

 

    WORD word=0;  
    BYTE hb=HIBYTE(word);  
    BYTE lb=LOBYTE(word);  
      
    word = MAKEWORD(lb,hb);  

5) "ABCD" 或L“你好” 这样的四字节字符串 转换为DWORD 进行保存

 

    WCHAR str[3]={L"你好"};  
      
    memcpy(&dWord,str,4);  
      
      
    WCHAR hChar=(WCHAR)HIWORD(dWord); // 好  
    WCHAR lChar=(WCHAR)LOWORD(dWord); // 你  

综合例子:

 

        char  *name="abcd";  
        DWORD dWord=0;  
      
      
        WORD hw=HIWORD(dWord);  
        WORD lw=LOWORD(dWord);  
      
        BYTE hhb=HIBYTE(hw);  
        BYTE lhb=LOBYTE(hw);  
      
        BYTE hlb=HIBYTE(lw);  
        BYTE llb=LOBYTE(lw);  
      
      
      
        hhb   =   name[0];   
        hlb   =   name[1];   
        lhb   =   name[2];   
        llb   =   name[3];   
      
        hw   =   MAKEWORD(hlb,   hhb);  //ba  
        lw   =   MAKEWORD(llb,   lhb);  //dc  
      
        //dWord 为 "dcba"  
        dWord   =   MAKELONG(lw,   hw); //dcba  
      
        hw=HIWORD(dWord); // ba  
        lw=LOWORD(dWord); // dc  
      
        hhb=HIBYTE(hw);  // a  
        lhb=LOBYTE(hw);  // b  
      
        lhb=HIBYTE(lw);  // c  
        llb=LOBYTE(lw);  // d  
      
      
      
    ///////////////////////  对比程序  ///////////////////////////////////////////////////  
      
        // dWord 为 "abcd"  
        memcpy(&dWord,name,4);  
      
        hw=HIWORD(dWord); // cd  
        lw=LOWORD(dWord); // ab  
      
        hhb=HIBYTE(hw);   // d  
        lhb=LOBYTE(hw);   // c  
      
        lhb=HIBYTE(lw);   // b  
        llb=LOBYTE(lw);   // a  

本文使用 书画小说软件 发布,内容与软件无关,书画小说软件 更惬意的读、更舒心的写、更轻松的发布。

 

dword word byte 相互转换 .xml的更多相关文章

  1. C#中string和byte[]相互转换问题解决

    本来想讲string转换为byte数组,通过在VS上打 ‘str. “来找,结果半天没发现跳出来的函数中有想要的,哭瞎 /(ㄒoㄒ)/~~ 这回将两种情况都记下来了.... string ---> ...

  2. C++ DWORD 转byte char 数组、指针

    C++ DWORD 转byte char 数组.指针 byte byteData[1024]; // byte数组,示例 DWORD dwData = dwReadBytes; // dword数据, ...

  3. WriteableBitmap/BitmapImage/MemoryStream/byte[]相互转换

    1 WriteableBitmap/BitmapImage/MemoryStream/byte[]相互转换 2012-12-18 17:27:04|  分类: Windows Phone 8|字号 订 ...

  4. Word文件乱码XML

    文章介绍 一个朋友写的文档因为异常关机,导致全部文件变成了xml的乱码,正好帮他解决了,感觉这些或许有些帮助,就先记录下来了. 破损文件介绍 文件破坏之后,打开全是xml格式的文档,结构如下. 恢复过 ...

  5. java 中 image 和 byte[] 相互转换

      java 中 image 和 byte[] 相互转换可恶的…………其实也挺好的 只是把好不容易写出来的东西记下来,怕忘了…… 下面,我来介绍一个简单的 byte[] to image, 我们只需要 ...

  6. C# 导出图片到Word (通过XML实现)

    private void ExportDataToWord(string content) { StringBuilder sbMain = new StringBuilder(); #region ...

  7. DWORD WORD到INT的转换

    最近在做一个有关TCP/TP通信的消息解析,涉及到了这方面的转换,记录一下. 首先,如果是在网络传输.消息解析的情况下,要注意一下网络传送使用的是大端还是小端模式,这影响到我们的高低位的传输顺序. W ...

  8. 序列化之对象,字符串,byte数组,XML之间的转换(一)

    工作一年多了,越来越感到自己不能这样一直下去,在最好的青春里面却已经死了.被时间消磨了意志,被工作杀死了精神.我想,我只要活着,我就要去不断的要求自己,不断的去追求更高的山峰. 放眼四周,有趣的灵魂越 ...

  9. 关于word转化成xml,图片的转换

    当word另存为xml的时候,其中的图片会以Base64编码形式展示在xml文件的特定位置, java中操作图片转换成64位编码的方式: 可将返回的64直接放在前面的未知即可:

随机推荐

  1. 指定IE浏览器渲染方式

    <meta http-equiv="X-UA-Compatible" content="IE=7" />以上代码告诉IE浏览器,无论是否用DTD声明 ...

  2. JavaScript获取DOM元素位置和尺寸大小

      在一些复杂的页面中经常会用JavaScript处理一些DOM元素的动态效果,这种时候我们经常会用到一些元素位置和尺寸的计算,浏览器兼容性问题也是不可忽略的一部分,要想写出预想效果的JavaScri ...

  3. 关于Netty4.x中文教程系列更新进度的说明和道歉

    最近一些事情.貌似发现很久没更新教程了.这里和大家说一声对不起.教程5的前半部分差不多年前就写好了.但是由于年前我在的项目组项目进度比较紧张.一直在加班.教程的后半部分就一直没有写.年后由于一些公司人 ...

  4. USACO Section 3.1: Stamps

    这题一开始用了dfs(注释部分),结果TLE,后来想了DP方法,f[i] = f[j] + f[i-j], j = 1, 2... i/2, 还是TLE,网上搜了别人的代码,发现自己的状态方程有问题, ...

  5. 《JAVA编程那点事儿》读书笔记(二)——类和对象

    方法: 1. 基本的main方法: public static void main(String[] args) 2.静态方法内部调用非静态方法:重新声明一个类,通过这个类来调用非静态方法 publi ...

  6. 命令 tar & zip

    安装zip yum install -y unzip zip: tar-c: 建立压缩档案-x:解压-t:查看内容-r:向压缩归档文件末尾追加文件-u:更新原压缩包中的文件 这五个是独立的命令,压缩解 ...

  7. Toast.makeText().show() 正常使用但不显示的解决办法

    症状: toast正常构造,调用show时,不显示. View tabMeItem = tabHost.findViewById(R.id.tab_me_xc); tabMeItem.setOnCli ...

  8. leetcode:Plus One

    Given a non-negative number represented as an array of digits, plus one to the number. The digits ar ...

  9. 我的Linux书架

    原文地址www.cnblogs.com/wwang/archive/2011/01/27/1944406.html 工作几年来,一直从事Linux内核驱动方面的开发.从接触Linux到现在,读过不少L ...

  10. 如何停止Android Monkey脚本

    如何停止Android Monkey脚本 最近用monkey来包apk的性能测试,发现一旦monkey跑起来以后,即使将数据线和PC断开,monkey脚本还是会继续运行下去.结果找到了一个办法去停止它 ...