由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Java版 - 困扰我的一个小问题,很久了
相关主题
化学在读博士转计算机,求建议。 (转载)问高手:数字签名
有没有像汇编一样读.class file的工具?世界上有10种人
a question新年求教一下方向问题 (转载)
Re: rephase the question高级JAVA开发员工作推荐 (转载)
初学者code请教 (大牛莫取笑)Test your PC speed
反驳JAVA无用论求救
运行java程序必须装jsdk 或jse吗?实在搞不定了,要问这儿的高人
两个很基本的JAVA问题timezone question (转载)
相关话题的讨论汇总
话题: int话题: 汇编话题: 函数话题: string话题: digits
进入Java版参与讨论
1 (共1页)
k*******d
发帖数: 701
1
一个练习题,如果把一个int整数转成二进制输出。
要求条件是
1。不能使用java已有的函数。
2。对写出的函数转换成汇编语言,也就是把自己写的函数要轻松的转变成汇编。这就
意味着,不要用
面向对象的东西啦,不然转成汇编可就麻烦了。
我遇到的问题
1。用直观的% / 运算,算出来的是逆序的,也就是说,比如 4, 我先得到是0,然后
又是0,然后
才是1。而我想得到是是100。
比如
4 / 2= 2 ....0
2 / 2= 1 ....0
1 / 2= 0 ....1
2。输出。如何输出?这个问题直接与要求2相关。
Java 里面的Integer.toBinaryString(int i)
的源代码还好,但是最后一句设计到new String(char[],int,int)函数,这个就难以转
成汇编
了。
public static String toBinaryString(int i) {
return toUnsignedString(i, 1);
}
这个函数是用来转二进制十六进制和八进制等的。
private static String toUnsigned
m******t
发帖数: 2416
2
Something like this I guess?
int digits[] = new int[64];
int last = 0;
do {
digits[last++] = num % 2;
num /= 2;
} while (num > 0);
for (int i = last - 1; i >= 0; i--) {
System.out.print(digits[i]);
}
System.out.println();

【在 k*******d 的大作中提到】
: 一个练习题,如果把一个int整数转成二进制输出。
: 要求条件是
: 1。不能使用java已有的函数。
: 2。对写出的函数转换成汇编语言,也就是把自己写的函数要轻松的转变成汇编。这就
: 意味着,不要用
: 面向对象的东西啦,不然转成汇编可就麻烦了。
: 我遇到的问题
: 1。用直观的% / 运算,算出来的是逆序的,也就是说,比如 4, 我先得到是0,然后
: 又是0,然后
: 才是1。而我想得到是是100。

k*******d
发帖数: 701
3
int digits[] = new int[32];
也是可以的。
但是,32个int好像好多啊,每个int都是32位啊
还有 汇编指令只有基本的load,store ,jump 等,如果构造数组啊?
System.out.print如何用汇编表示出来啊?
m******t
发帖数: 2416
4

那是个stack存给定的这个int的数位。
间接寻址
假定有个BIOS调用是往屏幕上写字符的,难道真要直接往显存写字节?
你这个明显是个面试题,所以只要说明代码简单到可以转成汇编就可以了,总
不会真的要你把汇编码写出来。

【在 k*******d 的大作中提到】
: int digits[] = new int[32];
: 也是可以的。
: 但是,32个int好像好多啊,每个int都是32位啊
: 还有 汇编指令只有基本的load,store ,jump 等,如果构造数组啊?
: System.out.print如何用汇编表示出来啊?

k*******d
发帖数: 701
5
不是面试题啦,是考试题,往届的考题
1 (共1页)
进入Java版参与讨论
相关主题
timezone question (转载)初学者code请教 (大牛莫取笑)
想问一下史版的牛人关于十近制反驳JAVA无用论
关于英语对算术能力的负面影响(3)运行java程序必须装jsdk 或jse吗?
3年级数学怎么教两个很基本的JAVA问题
化学在读博士转计算机,求建议。 (转载)问高手:数字签名
有没有像汇编一样读.class file的工具?世界上有10种人
a question新年求教一下方向问题 (转载)
Re: rephase the question高级JAVA开发员工作推荐 (转载)
相关话题的讨论汇总
话题: int话题: 汇编话题: 函数话题: string话题: digits