标签: binary

如何打印(使用cout)数字存储在内存中的方式?

我正在学习关于操作系统的大学课程,我们正在学习如何从二进制转换为十六进制,十进制到十六进制等等.今天我们刚刚学习了如何使用二进制补码(〜数字)将有符号/无符号数存储在内存中+ 1).

我们在纸上做了几个练习,我希望能够在向老师提交作业之前验证我的答案.我为前几个练习编写了一个C++程序,但现在我不知道如何通过以下问题验证我的答案:

char a, b;

short c;
a = -58;
c = -315;

b = a >> 3;
Run Code Online (Sandbox Code Playgroud)

我们需要在内存中显示二进制表示a,bc.

我已经在纸上完成了它,它给了我以下结果(在二进制补码后的数字内存中的所有二进制表示):

a = 00111010(它是一个字符,所以1个字节)

b = 00001000(它是一个字符,所以1个字节)

c = 11111110 11000101(它是一个短的,所以2个字节)

有没有办法验证我的答案?在C++中是否有一种标准方法可以在数字的内存中显示二进制表示,或者我是否必须自己编写每个步骤(计算二进制补码然后转换为二进制)?我知道后者不会花那么长时间,但我很好奇是否有一种标准的方法可以做到这一点.

c++ binary iostream representation std-bitset

194
推荐指数
6
解决办法
25万
查看次数

我可以在C或C++中使用二进制文字吗?

我需要使用二进制数.

我试着写:

const x = 00010000;
Run Code Online (Sandbox Code Playgroud)

但它没有用.

我知道我可以使用具有相同值的十六进制数字00010000,但我想知道C++中是否存在二进制数的类型,如果没有,是否有另一种解决方案可以解决我的问题?

c c++ binary

182
推荐指数
13
解决办法
34万
查看次数

C#二进制文字

有没有办法在C#中编写二进制文字,比如用0x前缀十六进制?0b不起作用.

如果没有,有什么简单的方法可以做到这一点?某种字符串转换?

c# syntax binary

174
推荐指数
6
解决办法
13万
查看次数

如何在Ruby中将字符串或整数转换为二进制?

如何创建整数0..9和数学运算符+ - */in到二进制字符串.例如:

 0 = 0000,
 1 = 0001, 
 ...
 9 = 1001
Run Code Online (Sandbox Code Playgroud)

有没有办法在不使用库的情况下使用Ruby 1.8.6执行此操作?

ruby binary encode

161
推荐指数
4
解决办法
11万
查看次数

如何比较二进制文件以检查它们是否相同?

什么是最简单的方法(在Ubuntu Linux上使用图形工具或命令行)来知道两个二进制文件是否相同(时间戳除外)?我不需要实际提取差异.我只需要知道它们是否相同.

binary diff compare file

161
推荐指数
9
解决办法
18万
查看次数

在python中将整数转换为二进制

为了将整数转换为二进制,我使用了以下代码:

>>> bin(6)  
'0b110'
Run Code Online (Sandbox Code Playgroud)

什么时候擦除'0b',我用这个:

>>> bin(6)[2:]  
'110'
Run Code Online (Sandbox Code Playgroud)

我能做些什么,如果我想表明6作为00000110代替110

python binary integer

159
推荐指数
9
解决办法
25万
查看次数

在Java中将int转换为二进制字符串表示形式?

在Java中将int转换为二进制字符串表示形式的最佳方法(理想情况下,最简单)是什么?

例如,假设int是156.二进制字符串表示为"10011100".

java string binary int

143
推荐指数
9
解决办法
26万
查看次数

为什么Git将此文本文件视为二进制文件?

我想知道为什么git告诉我这个:?

$ git diff MyFile.txt
diff --git a/MyFile.txt b/MyFile.txt
index d41a4f3..15dcfa2 100644
Binary files a/MyFile.txt and b/MyFile.txt differ
Run Code Online (Sandbox Code Playgroud)

他们不是文本文件吗?

我检查了.gitattributes,它是空的.为什么我收到这条消息?我不能再使用差异了

添加:

我注意到@文件中有一个权限,这是什么?这可能是原因吗?

$ls -all
drwxr-xr-x   5 nacho4d  staff    170 28 Jul 17:07 .
drwxr-xr-x  16 nacho4d  staff    544 28 Jul 16:39 ..
-rw-r--r--@  1 nacho4d  staff   6148 28 Jul 16:15 .DS_Store
-rw-r--r--@  1 nacho4d  staff    746 28 Jul 17:07 MyFile.txt
-rw-r--r--   1 nacho4d  staff  22538  5 Apr 16:18 OtherFile.txt
Run Code Online (Sandbox Code Playgroud)

git binary

135
推荐指数
9
解决办法
8万
查看次数

使用-1将所有位设置为true是否安全?

我已经看到这种模式在C&C++中使用了很多.

unsigned int flags = -1;  // all bits are true
Run Code Online (Sandbox Code Playgroud)

这是一个很好的便携式方法吗?或正在使用0xffffffff~0更好?

c c++ binary bit-fields

130
推荐指数
9
解决办法
3万
查看次数

转换为二进制并在Python中保持前导零

我正在尝试使用Python中的bin()函数将整数转换为二进制.但是,它总是删除我实际需要的前导零,这样结果总是8位:

例:

bin(1) -> 0b1

# What I would like:
bin(1) -> 0b00000001
Run Code Online (Sandbox Code Playgroud)

有办法做到这一点吗?

python binary formatting bitwise-operators

129
推荐指数
6
解决办法
13万
查看次数