`
三里小龙
  • 浏览: 85025 次
  • 性别: Icon_minigender_1
  • 来自: 孝感
社区版块
存档分类
最新评论

十进制转二进制小示例(含位运算操作及规律)

    博客分类:
  • Java
阅读更多

package org.noneorone.lang.number;

 

/**

* Title: JavaTech<br>

* Description: 进制转换小例<br>

* Copyright: Copyright (c) 2012 <br>

* Create DateTime: Apr 11, 2012 2:51:22 PM <br>

* @author sunnysolong

*/

public class BinaryConversion {

 

/**

* 十进制转二进制处理

* @param decimal

* @return

*/

private static StringBuilder decimalToBinary(int decimal){

StringBuilder sb = new StringBuilder();

decimalToBinary(decimal, sb);

sb = sb.reverse();

if(sb.indexOf("0") == 0){

sb.deleteCharAt(0);

}

return sb;

}

/**

* 十进制转二进制

* @param decimal

* @param sb

* @return

*/

private static StringBuilder decimalToBinary(int decimal, StringBuilder sb){

//商和余数

int quotient = 0, remainder = 0;

remainder = decimal - decimal / 2 * 2;

quotient = (decimal - remainder) / 2;

//System.out.println(decimal + " / 2 = " + quotient + " ... " + remainder);

if(quotient > 1){

sb.append(remainder);

decimalToBinary(quotient, sb);

}else{

sb.append(remainder);

sb.append(quotient);

}

return sb;

}

 

public static void main(String[] args) {

System.out.println(decimalToBinary(23) + "---" + decimalToBinary(61) + "---" + decimalToBinary(42));;

System.out.println( 61|23); // 10111 | 111101 对整型参数逐位执行布尔OR操作,如果其中一个运算数中相应的位数为1或者两者都为1,则结果中的这一位为1

System.out.println( 61&23); // 10111 & 111101 对整型参数逐位执行布尔AND操作,只有两个运算数中相应的位数都为1,结果中的这一位方可为1

System.out.println( 61^23); // 10111 ^ 111101 对整型参数逐位执行布尔异或操作,异或是指第一个运算数是true,或者第二个运算数是true,但是两者不能同时为true.如果两个运算数中只有一个数的相应位为1(但不能同时为1),那么结果中的这一位就为1。

//总结:a | b = a & b + a ^ b;

}

}


0
0
分享到:
评论

相关推荐

    基础的十进制按位运算总结与在Python中的计算示例

    按位运算是计算机学习中的基础,Python完全支持位运算符从而几乎可以直接显示出位运算的结果,这里我们稍微总结一下基础的十进制按位运算总结与在Python中的计算示例

    php实现统计二进制中1的个数算法示例

    输入一个十进制整数,输出该数二进制表示中1的个数。其中负数用补码表示。 解决思路 这是个位运算的题目。 解法一:可以通过按位与操作,通过将每一位和1与操作来求出1的个数。 解法二(最优解):一个巧妙的方法,...

    C语言 位运算详解及示例代码

    所谓位运算,就是对一个比特(Bit)位进行操作。在《二进制思想以及数据的存储》一节中讲到,比特(Bit)是一个电子元器件,8个比特构成一...C语言中不能直接使用二进制,&两边的操作数可以是十进制、八进制、十六进制

    Javascript 按位与赋值运算符 (=)使用介绍

    变量和表达式均被视为 32 位二进制值,而一般表达式里面都是十进制整数,此时需要先转换成对应的二进制,然后向前加0,补足32位。 代码如下:result &= 【整数2】等价于result = result & 【整数2】 & 对两个 32 位...

    浙江大学C语言上机练习题附答案

    10016 十进制转换二进制 46 10017 递归函数程序设计求Fabonacci数列 48 10019 改错题error10_1.cpp 49 10022 编程题 50 10026 指定位置输出字符串 50 10027 藏尾诗 51 10028 改错题error11_2.cpp 52 40065 分解质...

    EXCEL函数功能整理版

    26 BIN2DEC 这个函数将二进制数转换为十进制数。负数用二进制数补码表示 27 CHAR 返回对应于数字代码的字符。函数 CHAR 可将其他类型计算机文件中的代码转换为字符。 28 CLEAN 删除文本中不能打印的...

    1345个易语言模块

    十六进制 转十进制模块 .ec 十进制转化为十六进制5.ec 压缩加密文件夹.ec 压缩文件夹.ec 双功能自动编号模块.ec 发 送消息_全选插入.ec 取CPU特征字.ec 取DOS执行结果.ec 取DOS执行结果模块 1.0.ec 取Dos执行结 果...

    1350多个精品易语言模块

    十六进制 转十进制模块 .ec 十进制转化为十六进制5.ec 压缩加密文件夹.ec 压缩文件夹.ec 双功能自动编号模块.ec 发 送消息_全选插入.ec 取CPU特征字.ec 取DOS执行结果.ec 取DOS执行结果模块 1.0.ec 取Dos执行结 果...

    vc++ 应用源码包_1

    内含各种例子(vc下各种控件的使用方法、标题栏与菜单栏、工具栏与状态栏、图标与光标、程序窗口、程序控制、进程与线程、字符串、文件读写操作、文件与文件夹属性操作、文件与文件夹系统操作、系统控制操作、程序...

    0.30000000000000004:浮点数学示例

    计算机只能本地存储整数,因此它们需要某种表示十进制数字的方式。 该表示具有一定程度的不准确性,这就是为什么经常出现0.1 + 0.2 != 0.3 。 为什么会这样? 实际上,这很有趣。 当您有一个以10为底的系统(如...

    上海电机学院C语言实训答案

    (29)某公司在传输数据过程中为了安全要对数据进行加密,若传递的是四位的整数,对其进行加密的规则为:每位数字都加上5,然后用和除以10的余数代替该数字,再将第一位和第四位交换,第二位和第三位交换。...

    vc++ 应用源码包_2

    内含各种例子(vc下各种控件的使用方法、标题栏与菜单栏、工具栏与状态栏、图标与光标、程序窗口、程序控制、进程与线程、字符串、文件读写操作、文件与文件夹属性操作、文件与文件夹系统操作、系统控制操作、程序...

    vc++ 应用源码包_6

    一共10几包,每个包几十兆。 Visual.C++编程技巧精选500例源代码 内含各种例子(vc下各种控件的使用方法、标题栏与菜单栏、工具栏与状态栏、图标与光标、程序窗口、程序控制、进程与线程、字符串、文件读写操作、...

    vc++ 应用源码包_5

    一共10几包,每个包几十兆。 Visual.C++编程技巧精选500例源代码 内含各种例子(vc下各种控件的使用方法、标题栏与菜单栏、工具栏与状态栏、图标与光标、程序窗口、程序控制、进程与线程、字符串、文件读写操作、...

    vc++ 应用源码包_3

    内含各种例子(vc下各种控件的使用方法、标题栏与菜单栏、工具栏与状态栏、图标与光标、程序窗口、程序控制、进程与线程、字符串、文件读写操作、文件与文件夹属性操作、文件与文件夹系统操作、系统控制操作、程序...

    Visual Basic 6编程技术大全 中译本扫描版带书签 2/2

    4.2.12十进制数据类型110 4.3联合数据类型110 4.3.1用户自定义类型110 4.3.2数组111 4.3.3集合120 4.3.4字典对象125 4.4过程127 4.4.1作用域128 4.4.2参数列表和返回值129 4.4.3错误处理134 第5章VB应用程序与VB库...

    Visual Basic 6编程技术大全 中译本扫描版带书签 1/2

    4.2.12十进制数据类型110 4.3联合数据类型110 4.3.1用户自定义类型110 4.3.2数组111 4.3.3集合120 4.3.4字典对象125 4.4过程127 4.4.1作用域128 4.4.2参数列表和返回值129 4.4.3错误处理134 第5章VB应用程序与VB库...

Global site tag (gtag.js) - Google Analytics