打印整型的二进制格式

简介:

一共2个文件:
PrintBinary.java       --- 
打印整形的二进制格式
PrintBinaryTest.java --- 
测试文件
主要内容:
打印整型的二进制格式
主要功能:
1.   void printBinaryNumber(int x) 
      
打印整型的二进制格式
文件1:PrintBinary.java

package  Common.Utils.DataUtils;

/**
 * 
 * <p>
 * Description: 打印整型的二进制格式
 * </p>
 * <p>
 * Copyright 2006 mjn.
 * </p>
 * 
 * 
@author ma jia nan
 * @Create Date : 2008-02-24
 * @Version : 1.0
 
*/

public class PrintBinary  {
    
/**
     * 打印整型的二进制格式
     * 
     * 
@param x
     * 
@return

     
*/

    
public void printBinaryNumber(int x) {
        
int[] buffer = new int[32
];
        
for (int i = 0, mask = 1; i < 32; i++
{
            mask 
= 1
;
            mask 
= mask <<
 i;
            buffer[i] 
= (mask & x) >>
 i;
        }

        
for (int j = 31; j >= 0; j--{
            System.out.print(buffer[j]);
            
if (j % 8 == 0
)
                System.out.print(
" "
);
        }

        System.out.println(
"");
    }

}

文件2:PrintBinaryTest.java 
import  Common.Utils.DataUtils.PrintBinary;

/**
 * 
 * <p>
 * Description: 测试PrintBinary
 * </p>
 * <p>
 * Copyright 2006 mjn.
 * </p>
 * 
 * 
@author ma jia nan
 * @Create Date : 2008-03-24
 * @Version : 1.0
 
*/


public class PrintBinaryTest  {

    
public static void main(String args[]) 
{
        System.out.println(s((
byte100
));
        System.out.println(s((
byte1
));
        System.out.println(s((
byte-1
));

    }


    
private static byte s(byte b) {
        
return new
 test().swap(b);
    }


    
private void p(int x) {
        
new
 PrintBinary().printBinaryNumber(x);
    }


    
/**
     * 交换b二进制形式(8位)的前4位和后4位
     * 
     * 
@param b
     * 
@return

     
*/

    
public byte swap(byte b) {
        
int lowBits = b & 0xF
;
        
int highBits = b & 0xF0
;
        
int result = lowBits << 4 | highBits >> 4
;

        System.out.println(
"\n\nb=" + b + "  0xF=" + 0xF + "  0xF0=" + 0xF0
);
        System.out.print(
"      b  Binary : "
);
        p(b);
        System.out.print(
"    0xF  Binary : "
);
        p(
0xF
);
        System.out.print(
" lowBits(b&0xF) : "
);
        p((b 
& 0xF
));

        System.out.print(
"\n      b  Binary : "
);
        p(b);
        System.out.print(
"   0xF0  Binary : "
);
        p(
0xF0
);
        System.out.print(
"highBits(b&0xF0): "
);
        p((b 
& 0xF0
));

        System.out.print(
"\n   lowBits << 4 : "
);
        p((lowBits 
<< 4
));
        System.out.print(
"  highBits >> 4 : "
);
        p((highBits 
>>> 4
));
        System.out.print(
"    result( | ) : "
);
        p((result));

        
return (byte
) result;
    }


}

本文转自BlogJavaOo缘来是你oO的博客,原文链接: 打印整型的二进制格式,如需转载请自行联系原博主。
相关文章
|
7月前
|
存储 C语言 C++
C语言之数据的存储2(浮点数在内存中如何存储,如何输出,查看不同类型数据在内存中表示的范围的方法,十进制浮点数转化为二进制的方法)
C语言之数据的存储2(浮点数在内存中如何存储,如何输出,查看不同类型数据在内存中表示的范围的方法,十进制浮点数转化为二进制的方法)
|
12月前
|
数据格式
labview数据类型转换字符串文件路径进制转换小数格式等
labview数据类型转换字符串文件路径进制转换小数格式等
172 0
|
12月前
|
存储 编解码 C语言
【C语言】关于整型提升、截断、打印数据的结果
【C语言】关于整型提升、截断、打印数据的结果
二、八、十、十六进制互相转换大全
二进制(0~1)、八进制(0~7)、十进制(0~9)、十六进制(0~9、10即A、11即B、12即C、13即D、14即E、15即F)
433 0
|
Go 开发者
二进制转成其他进制|学习笔记
快速学习二进制转成其他进制
73 0
二进制转成其他进制|学习笔记
|
开发者 Python
十进制转换成二进制 | 学习笔记
快速学习 十进制转换成二进制
170 0
十进制转换成二进制 | 学习笔记
一个将十六进制转换为二进制字符数组的函数
十六进制数转换为二进制数组的函数HexToBinStr 函数实现: void HexToBinStr(int hex, char *bin_str, int str_size) { int i; for (i = 0; i !=str_size; ++i) { ...
1860 0