不使用sizeof,求某机器平台的int型整数位数(16,32,64)
思路,将整数变成字符串处理,并且在内存的末尾填零,即字符串结束符。
如 0x0012,0x00123456,0x00123456789ABCDE分别对应16,32,64位数; 小端机
代码
#include
#include
int main(int argc , char *argv[])
{
...
分类:
其他好文 时间:
2015-04-10 11:34:20
阅读次数:
191
网络字节顺序是TCP/IP中规定好的一种数据表示格式,它与具体的CPU类型、操作系统等无关,
从而可以保证数据在不同主机之间传输时能够被正确解释。网络字节顺序采用big endian排序方式。
主机字节序就是我们平常说的大端和小端模式:不同的 CPU 有不同的字节序类型,这些字节序是
指整数在内存中保存的顺序 这个叫做主机序。...
分类:
其他好文 时间:
2015-04-09 17:38:09
阅读次数:
93
// 验证计算机是大端存储还是小端存储
#include
int main()
{
int a = 1;
char *p;
p = (char *)(&a);
if(*p == 0 )
printf("当前计算机是大端存储\n");
else
printf("当前计算机是小端存储\n");
return 0;
}
//也可以用联合实现
#include
uni...
分类:
编程语言 时间:
2015-04-06 15:42:42
阅读次数:
162
1、大端小端容易迷惑,记忆方法:地址从左向右是增加,我们平时的计数方式是大端。 而我们平时的计数,从左向右是高位到低位,是减少,也就是说,大端相反。2、字节是计算机存储的最小单元,字节本身可以认为是大端,因为19,表示为13。多字节表示一般是小端,比如:275,表示为13 01。前面的13对应19,...
分类:
其他好文 时间:
2015-04-03 23:51:48
阅读次数:
161
在 各种计算机体系结构中,对于字节、字等的存储机制有所不同,因而引发了计算机 通信领 域中一个很重要的问题,即通信双方交流的信息单元(比特、字节、字、双字等等)应该以什么样的顺序进行传送。如果不达成一致的规则,通信双方将无法进行正 确的编/译码从而导致通信失败。目前在各种体系的计算机中通常采用的字节...
分类:
其他好文 时间:
2015-04-03 13:12:10
阅读次数:
156
采用 Little-endian 模式的 CPU对操作数的存放方式是从低字节到高字节,而 Big-endian 模式对操作数的存放方式是从高字节到低字节。例如,16bit 宽的数 0x1234 在 Little-endian 模式 CPU 内存中的存放方式(假设从地址 0x4000开始存放)为:内 ...
分类:
其他好文 时间:
2015-04-03 09:08:21
阅读次数:
214
端模式分为:小端字节序和大端字节序,也就是字节在内存中的顺序。 需要注意的是,对于数据来说,高字节是指最高位字节,即左边第一位!小端字节序:低字节存于内存低地址;高字节存于内存高地址。如一个long型数据0x12345678 0x0029f458 0x78 ...
分类:
其他好文 时间:
2015-04-02 13:11:06
阅读次数:
124
今天在做一个C语言题目的时候,碰上了这样一题:#include using namespace std; union
{
int i;
char x[2];
}a;int main()
{
a.x[0] = 10;
a.x[1] = 1;
cout<<a.i;
system("pause");...
分类:
其他好文 时间:
2015-03-31 22:19:51
阅读次数:
182
OUTPUT_FORMAT("elf32-littlearm", "elf32-littlearm", "elf32-littlearm")/*指定输出可执行文件是elf格式,32位ARM指令,小端*/OUTPUT_ARCH(arm)/*指定输出可执行文件的平台为ARM*/ENTRY(_start)...
分类:
其他好文 时间:
2015-03-31 21:57:50
阅读次数:
143
//way 1union{ unsigned long biths; unsigned char bytes[4];} theValue;//way 2ndtypedef char* bytePointer;void showBytes(bytePointer p, int len){ in...
分类:
其他好文 时间:
2015-03-30 23:04:15
阅读次数:
195