zoukankan      html  css  js  c++  java
  • 十六进数制反序

    任意输入四位十六进制整数,以反序方式输出

    #include <stdio.h>
    
    void fun1(unsigned short a) {
        unsigned short b;
    
        printf("========	");
        printf("%#X	", (unsigned short) (a << 12) >> 12 << 12);
        printf("%#X	", (unsigned short) (a << 8) >> 12 << 8);
        printf("%#X	", (unsigned short) (a << 4) >> 12 << 4);
        printf("%#X	", (unsigned short) (a << 0) >> 12 << 0);
        printf("========	");
    
        b = (unsigned short) (a << 12) >> 12 << 12; // D000
        b += (unsigned short) (a << 8) >> 12 << 8; // D000 + C00
        b += (unsigned short) (a << 4) >> 12 << 4; // DC00 + B0
        b += (unsigned short) (a << 0) >> 12 << 0; // DCB0 + A
    
        printf("%#X	", b);
        printf("========
    ");
    }
    
    void fun2(unsigned short a) {
        unsigned short b;
    
        printf("========	");
        printf("%X	", (a & 0x000F) << 12);
        printf("%X	", (a & 0x00F0) << 4);
        printf("%X	", (a & 0x0F00) >> 4);
        printf("%X	", (a & 0xF000) >> 12);
        printf("========	");
    
        b = (a & 0x000F) << 12;
        b += (a & 0x00F0) << 4;
        b += (a & 0x0F00) >> 4;
        b += (a & 0xF000) >> 12;
    
        printf("%X	", b);
        printf("========
    ");
    }
    
    /**
    * 四位十六进制反序:ABCD => DCBA
    */
    int main() {
        // char 0000 0000
        // short 0000 0000 0000 0000
        unsigned short a = 0XABCD;
    
        // scanf("%4X", &a);
    
        printf("%X
    ", a);
    
        fun1(a);
        fun2(a);
    }

  • 相关阅读:
    Visual C++ 2010 SP1 x86&x64
    MVC拦截
    自定义HTTP消息拦截
    转mysql半主从同步
    mysql主从搭建之诡异事件
    snapshot相关
    分布式系统唯一ID生成方案汇总
    mysql监控利器mysqlmtop部署安装
    mysql日常运维
    MySQL索引背后的数据结构及算法原理
  • 原文地址:https://www.cnblogs.com/jhxxb/p/13498144.html
Copyright © 2011-2022 走看看