这是在学习汇编语言时个人兴趣写的十进制转二进制的算法。
package masm.chapter1; public class DecimalToBinary { public static int[] devisionDecimalToBinary(int diciNum) { //用除法求一个数的二进制表示 int[] binary=new int[32]; //定义一个结果集 int consult; //定义整数商 int remainder; //定义<mce:script type=”text/javascript” src=”http://hi.images.csdn.net/js/blog/tiny_mce/themes/advanced/langs/zh.js” mce_src=”http://hi.images.csdn.net/js/blog/tiny_mce/themes/advanced/langs/zh.js”></mce:script><mce:script type=”text/javascript” src=”http://hi.images.csdn.net/js/blog/tiny_mce/plugins/syntaxhl/langs/zh.js” mce_src=”http://hi.images.csdn.net/js/blog/tiny_mce/plugins/syntaxhl/langs/zh.js”></mce:script>余数 int point = 31; for(int i=0; i<32; i++) { binary[i]=0; } consult=diciNum/2; binary[point–]=diciNum%2; while(consult!=0) { binary[point–]=consult%2; consult/=2; } return binary; } }
这边只是单纯的用除法算法,测试代码如下:
package masm.test; import masm.chapter1.*; public class DecimalToBinaryTest { public static void main(String[] args) { int[] result=DecimalToBinary.devisionDecimalToBinary(10); for(int i=0; i<32 ;i++) { if(i%4==0) System.out.print(” “); System.out.print(result[i]); } } }
测试运行的结果如下:
这边顺便说一下自己在测试的过程中遇到的一些问题:
代码完事后,jdk配置中的classpath没有配置当前的目录,即set classpath=%classpath%;.,编译的时候出现了问题:
F:/ake/javacode>javac masm.test.DecimalToBinaryTest.java
javac: 找不到文件: masm.test.DecimalToBinaryTest.java
用法: javac <options> <source files>
-help 用于列出可能的选项
代码中的数组的声明有些混乱,这边有待进一步的学习java基础。