打印整型的二进制格式

简介:

一共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的博客,原文链接: 打印整型的二进制格式,如需转载请自行联系原博主。
相关文章
|
6月前
|
存储 C语言 C++
C语言之数据的存储2(浮点数在内存中如何存储,如何输出,查看不同类型数据在内存中表示的范围的方法,十进制浮点数转化为二进制的方法)
C语言之数据的存储2(浮点数在内存中如何存储,如何输出,查看不同类型数据在内存中表示的范围的方法,十进制浮点数转化为二进制的方法)
|
5月前
|
C语言
C语言:二进制、八进制、十六进制整数的书写及输出
C语言:二进制、八进制、十六进制整数的书写及输出
|
11月前
|
数据格式
labview数据类型转换字符串文件路径进制转换小数格式等
labview数据类型转换字符串文件路径进制转换小数格式等
154 0
|
11月前
|
存储 编解码 C语言
【C语言】关于整型提升、截断、打印数据的结果
【C语言】关于整型提升、截断、打印数据的结果
|
11月前
|
存储 Linux C语言
用c语言将文件中十六进制数据与二进制数据相互转换
用c语言将文件中十六进制数据与二进制数据相互转换
200 0
【程序填空】下面程序的功能是将一个整数字符串转换为一个整数,如”-1234”转换为-1234
【程序填空】下面程序的功能是将一个整数字符串转换为一个整数,如”-1234”转换为-1234
182 0
|
Go 开发者
二进制转成其他进制|学习笔记
快速学习二进制转成其他进制
70 0
二进制转成其他进制|学习笔记
|
PHP
PHP函数运用之怎么进行进制的转换
在上一篇文章《PHP函数运用之返回某个日期的前一天和后一天》中,我们介绍了利用strtotime() 函数获取给定日期前一天和后一天日期、前一月和后一月日期、一周和后一周的日期等方法,感兴趣的朋友可以学习了解一下~ 本文的重点是“进制转换”,介绍一下二进制数和十进制数的相互转换、十进制数和十六进制数的相互转换、十进制数和八进制数的相互转换。 二进制数和十进制数的相互转换 1、二进制数转十进制数 可以使用 bindec(二进制字符串) 函数,它可把二进制数转换为十进制数。
112 0
一个将十六进制转换为二进制字符数组的函数
十六进制数转换为二进制数组的函数HexToBinStr 函数实现: void HexToBinStr(int hex, char *bin_str, int str_size) { int i; for (i = 0; i !=str_size; ++i) { ...
1855 0