最快的方式求解C语言中int在计算机中的表现形式?

sh/bash/dash/ksh/zsh等Shell脚本
回复
头像
yyan
帖子: 33
注册时间: 2011-07-20 22:19

最快的方式求解C语言中int在计算机中的表现形式?

#1

帖子 yyan » 2011-07-31 22:51

方法一: 应用程序->附件->计算机 .......
方法二: 写一个(c,c++,java)程序, 编译, 执行 ....
方法三: 打开终端, 执行python, 执行bin(n) ,n 是一个十进制整数

方法一太慢,放弃
方法二太慢,放弃
方法三只能解决正整数

求大神指导. 操作速度一定要快!
头像
yyan
帖子: 33
注册时间: 2011-07-20 22:19

Re: 最快的方式求解C语言中int在计算机中的表现形式?

#2

帖子 yyan » 2011-07-31 22:58

上面的描述也许有点不清楚. 一句话, 我想在5秒钟之内知道一个整数的二进制补码,有什么方法?
fnan
帖子: 919
注册时间: 2009-07-01 22:04

Re: 最快的方式求解C语言中int在计算机中的表现形式?

#3

帖子 fnan » 2011-08-01 6:32

不大明白,想知道整数的二进制可以用bc,不是什么了不起的技巧:
echo 'obase=2;-12345'|bc
bash不如perl精妙,学不到lisp的皮毛,远不够c++强悍,不过可以用。
fnan
帖子: 919
注册时间: 2009-07-01 22:04

Re: 最快的方式求解C语言中int在计算机中的表现形式?

#4

帖子 fnan » 2011-08-01 11:38

负数:设 -15 8bits
echo 'obase=2;15'|bc|sed ':a;/.\{8\}/q;s/.*/0&/;ta'|sed 'y/10/01/'|xargs -i echo 'ibase=2;obase=2;{}+1'|bc
11110001
打字速度如何? :em06
bash不如perl精妙,学不到lisp的皮毛,远不够c++强悍,不过可以用。
fnan
帖子: 919
注册时间: 2009-07-01 22:04

Re: 最快的方式求解C语言中int在计算机中的表现形式?

#5

帖子 fnan » 2011-08-01 13:06

printf "ibase=obase=2;%08d+0\n" `bc <<<'obase=2;15'`|tr '01' '10'|bc
11110001
这样5秒可以吧?
bash不如perl精妙,学不到lisp的皮毛,远不够c++强悍,不过可以用。
fnan
帖子: 919
注册时间: 2009-07-01 22:04

Re: 最快的方式求解C语言中int在计算机中的表现形式?

#6

帖子 fnan » 2011-08-07 22:04

c以前略约看过,再看看bit操作符部分,以前看来看去不明白,现在好像容易多了。
再写个:
for i in {31..0};do printf $((正或负整数 & (1<<i)?1:0));done;echo
bash不如perl精妙,学不到lisp的皮毛,远不够c++强悍,不过可以用。
回复