计算机十进制转为八位二进制,Java将十进制转换为8位二进制(Java convert from decimal to 8-bit binary)...
Java将十进制转换为8位二进制(Java convert from decimal to 8-bit binary)
我写了简单的java代码来从十进制转换为8位二进制:抱歉这个愚蠢的问题
1 int dec=1;
2 String result="";
3 String reverse = "";
4 while(dec!=0)
5 {
6 result+=dec%2;
7 dec=dec/2;
8 }
9 //8-Bit Binary
10 System.out.println("dec length is :"+result.length());
// int j = 8-result.length(); // for(int i = 0; i
11 for(int i=0;i
12 {
13 result+=0;
14 System.out.println("*");
15 }
16 System.out.println("8-Bit before reverse:"+result);
17 for(int i = result.length() - 1; i >= 0; i--)
18 {
19 reverse = reverse + result.charAt(i);
20 }
21 System.out.println("8-bit representation:"+reverse);
结果为:dec长度为:1 * * * *反向前8位:10000 8位表示:00001
但是当我删除第13行(结果+ = 0;)编译器打印7星号(*),这是什么原因? 结果的长度将每次更新
i wrote simple java code to convert from decimal to 8-bit binary: sorry for this stupid question
1 int dec=1;
2 String result="";
3 String reverse = "";
4 while(dec!=0)
5 {
6 result+=dec%2;
7 dec=dec/2;
8 }
9 //8-Bit Binary
10 System.out.println("dec length is :"+result.length());
// int j=8-result.length(); // for(int i=0;i
11 for(int i=0;i
12 {
13 result+=0;
14 System.out.println("*");
15 }
16 System.out.println("8-Bit before reverse:"+result);
17 for(int i = result.length() - 1; i >= 0; i--)
18 {
19 reverse = reverse + result.charAt(i);
20 }
21 System.out.println("8-bit representation:"+reverse);
the result was : dec length is :1 * * * * 8-Bit before reverse:10000 8-bit representation:00001
but when i remove line 13 (result+=0;) the compiler print 7 asterisk(*), what is the reason for that? length of result will update every time
原文:https://stackoverflow.com/questions/48952307
更新时间:2019-12-21 05:30
最满意答案
这是因为你的for循环的结果:
for(int i=0;i
其中的行动:
result+=0;
增加结果的长度使得8-result.length()的结果更小(8 - 2 = 6,8 - 3 = 5 ...),因此循环执行的次数更少。
It is because of the confition of your for loop:
for(int i=0;i
And the action in it:
result+=0;
Increasing the length of result makes the result of 8-result.length() smaller (8 - 2 = 6, 8 - 3 = 5 ...), hence the loop being executed less times.
相关问答
首先, main()的循环没有意义。 调用函数一次,完成。 str是一个16元素char数组,其元素可以通过索引0至15访问。 您访问了第16个,导致未定义的行为。 printf %s需要一个null结束的char数组。 你没有提供。 这是未定义的行为了。 该函数不返回任何内容。 使返回类型void 。 反向打印二进制表单正在完成。 确保这是你想要的。 您应该反向打印数组。 for循环完成后,您将打印它。 for(int in = BIT-1; in >= 0; in--){
printf
...
打印此页面,悬挂在显示器上方 http://graphics.stanford.edu/~seander/bithacks.html 但它大致相似 if(value&(1 << bit_number)) Print this page out, hang above your monitor http://graphics.stanford.edu/~seander/bithacks.html But it's roughly something like if ( value & (1 << b
...
这是因为你的for循环的结果: for(int i=0;i
其中的行动: result+=0;
增加结果的长度使得8-result.length()的结果更小(8 - 2 = 6,8 - 3 = 5 ...),因此循环执行的次数更少。 It is because of the confition of your for loop: for(int i=0;i
And the action in
...
您可以使用按位运算符。 例如。 var number = 54;
if (number & 1) { $('#mon').attr('checked', 'checked'); }
if (number & 2) { $('#tue').attr('checked', 'checked'); }
if (number & 4) { $('#wed').attr('checked', 'checked'); }
if (number & 8) { $('#thu').attr('checked
...
我认为你需要 m = reshape(dec2bin(typecast(b(:),'uint8'),8).',1,[]);
请注意,这会读取Matlab标准的列 - 主要顺序(向下,然后跨越)。 然后你可以转换回来 b_recovered = reshape(typecast(uint8(bin2dec(reshape(m,8,[]).')),'double'),size(b));
由于typecast不改变底层数据的情况下转换数据类型,因此这个过程不会降低准确性。 例如, >> b = ra
...
在C ++中,最简单的方法可能是使用std::bitset : #include
#include
int main() {
int x = 5;
std::bitset<8> bin_x(x);
std::cout << bin_x;
return 0;
}
结果: 00000101 In C++, the easiest way is probably to use a std::bitset: #include
...
假设二进制整数的长度不超过8位。 调用BinToDec() char Input[9];
cout << "Please enter the 8-bit binary:\n";
cin >> (Input);
cout << BinToDec(Input);
你需要创建一个至少有8 + 1个元素的char数组,char数组字符串的最后一个元素总是0。 int BinToDec(char* BinIn){
int intOut = 0;
intOut = intOut + (Bi
...
首先,您需要为多余的表示选择偏见。 由于通常选择等于可用量程的一半的偏置,对于8位,我们将选择-127作为偏置。 这意味着您有8位将被解释为无符号整数,并且将从该整数中减去127以获得最终结果。 因此,既然我们有 final = unsigned + bias
final = -17
bias = -127
我们结束了 unsigned = final - bias = -17 - (-127) = 110
因此-17的超出-127表示将是01101110(十进制110)。 First of
...
你的问题主要是binaryList = list(str(binary)) 。 str(0b010001110)如您所料,返回'142' ,而不是'0b101010' 。 因此, binaryList是['1', '4', '2'] 。 巧合的是, 1 * 2**2 + 4 * 2**1 + 2等于14,这给人的印象是你的功能不处理最后一位数。 但是,如果你正在运行,你的功能是0b101010作为输入,你得到10 。 将二进制表示形式化为字符串的解决方案是传递给format : list("{0:
...
您可能不清楚temp += '0'正在做什么。 它不是一个字符串,而是它偏移了一个未初始化的指针,并且当你实际使用它时,它是temp2[j] 。 要使用我认为你想要的字符串,请查看strcat() 。 我会把它扔掉并重新开始。 不要操纵字符串中的字符,只需将字符串转换为二进制字符串即可。 编写一些代码来将输入字符串从第一个字符移到最后一个字符。 保留答案的result整数,最初为0 。 当你遍历字符串时,移动result << 1 ,然后如果你看到一个字符'1' ,则在result添加数字1 。
...
计算机十进制转为八位二进制,Java将十进制转换为8位二进制(Java convert from decimal to 8-bit binary)...相关推荐
- 十进制点分IP转换为32位二进制IP
十进制点分IP转换为32位二进制IP #include<iostream> using namespace std; int main() {char ch[33];char s[100] ...
- C++ 十进制点分IP转换为32位二进制IP
题目内容: 编写程序,将十进制点分的IP转换为32位二进制IP地址.程序要能验证输入的十进制点分IP地址的合法性.用户输入的IP不和法时,输出"data error". 请使用模块 ...
- 十进制点分IP转换为32位二进制IP(C++)
题目详情 编写程序,将十进制点分的IP转换为32位二进制IP地址.程序要能验证输入的十进制点分IP地址的合法性.用户输入的IP不和法时,输出"data error". 请使用模块化 ...
- 将一个整数转换为32位数据(java实现)
将一个整数转换为32位数据(java实现) 将一个整数转换为二进制数据并且打印出来,都知道计算机底层使用32为数据来存储数据的.那么如何将一个整数通过代码的形式打印出来. 首先肯定需要用到位运算.通过 ...
- 整型转换为32位二进制字符串
记录下整型转换为32位二进制字符串的两种方式. 一.返回string 类型 char digits[] = {'0','1','2','3','4','5','6','7','8','9','a',' ...
- 29转换为8位二进制的转换过程
我们可以使用一种叫做"除2取余法"的方法来将数字29转换为8位二进制. 首先,我们将29除以2,得到一个商14和一个余数1.这意味着29的二进制表示的最低有效位为1. 然后,我们将 ...
- c# php md5 32位加密,C#实现将32位MD5摘要串转换为128位二进制字符串的方法
本文实例讲述了C#实现将32位MD5摘要串转换为128位二进制字符串的方法.分享给大家供大家参考,具体如下: 将32为MD5摘要串转换为128位二进制字符串: /// /// 将字符串转成二进制 // ...
- java enum int 转换为枚举_关于java:从枚举序号转换为枚举类型
我有一个枚举类型ReportTypeEnum,它在所有类的方法之间传递,但是我需要在URL上传递它,所以我使用序数方法来获取int值.在我把它放到我的另一个JSP页面之后,我需要将它转换回一个Repo ...
- matlab二进制乘法器,用74ls138实现2位二进制乘法器 - 数字电路图
用74ls138实现2位二进制乘法器 74LS138为3线-8线译码器,共有54/74S138和 54/74LS138两种线路结构型式,其工作原理如下: 当一个选通端(G1)为高电平,另两个选通端(/ ...
最新文章
- C++const关键字作用
- 打包phar文件过大的问题。
- 服务器免密码传输文件,CentOS7,使用 scp 命令, ssh 连接方式,免密码传输文件到远程服务器,免密执行远程服务器上的 shell 脚本...
- 华为Mate 30 Pro保护壳生产线谍照曝光:长方形摄像头模组实锤?
- DWR第五篇之文件上传
- 几个好用的makefile 几乎可以不用修改
- mapper mysl实现批量插入 更新
- windows下python访问ipv6报错
- php---兄弟连的php培训视频的总结(1)
- 根据身份证号码获取身份证信息(省市县、出生日期、性别)
- Oracle中的next_day(date,char)
- 机械转行java自学经历,零基础学java,血泪总结的干货
- php配置设置时区,php如何设置时区
- 自适应学习系统_如何建立适应性学习系统
- android 旋转屏幕 不重走生命周期,屏幕旋转后Activity生命周期
- Vim 利剑常磨,见血封喉 1
- 2022中国公司注册亚马逊欧洲站卖家资质审核(KYC)所需资料料及要求!
- ddr3ddr4 lpddr4速率_超极本的LPDDR3与笔记本的DDR4性能差多少
- ffmpeg-实现视频 metadata(moov) 前置
- 数学物理方程讲义(姜礼尚)弦振动方程