易截截图软件、单文件、免安装、纯绿色、仅160KB

ANSI C读书笔记系列之字符集篇 第四章 字节序

"endian"这个词出自<<格列佛游记>>,小人国的内战就源于吃鸡蛋时是究竟从大头(Big-Endian)敲开还是从小头(Little-Endian)敲开.我们一般将endian翻译成"字节序",将big endian和little endian称作"大端"和"小端".
在计算机科学领域中,字节序是指存放多字节数据的字节的顺序,典型的情况是整数在内存中的存放方式和网络传输的传输顺序.既然我们在本篇介绍字节序,那所说的重点则其一是字符(多字节)在内存中的字节存放顺序(这与前面的典型情况是同一类),其二是字符(多字节)在文件中保存的编码顺序.
一般谈到字节序问题,都是指上面说的典型情况,主要是处理内存中数据.这里的字节序跟CPU相关,主要涉及两大派系:Motorola系列和Intel的x86系列.Motorola采用big endian方式存储数据,而x86系列则采用little endian方式存储数据,当然,还有ARM等可配置"大端""小端"CPU系列.
big endian是指低地址存放最高有效字节,而little endian则是低地址存放最低有效字节. 如数字0x12345678在两种不同字节序CPU中的存储顺序如下所示:
Big Endian
                       低地址                                            高地址
                          ----------------------------------------->
                     +-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+-+
                    |     12     |      34    |     56      |     78    |
      &


相关文档:

linux c and asm 同时使用

from: 《自己动手写操作系统》
1. 中断向量表 查看 linux/init/main.c in http://lxr.linux.no/#linux+v2.6.32/init/main.c
2.
; [root@XXX XXX]# nasm -f elf foo.asm -o foo.o
; [root@XXX XXX]# gcc -c bar.c -o bar.o
; [root@XXX XXX]# ld -s foo.o bar.o -o foobar
; [root@XXX XXX]# ./foobar
; the 2nd on ......

关于《0 bug C/C++商用工程之道》的一处bug

这两天有很多朋友已经买了书了,并且开始看,呵呵,我心里也很高兴。
嗯,要说江湖上藏龙卧虎呢,这不,这才几天时间,已经有朋友指出我书中的一处明显错误,这里我正式给大家说明一下,免得对各位读者有个不好的误导。
问题出在第26页的一个图以及其相关文字。这是第二章基础知识的第一节,其实就是关于内存的讲解,大家 ......

C/C++ 文件读写操作总结(2)

五、文件定位
  和C的文件操作方式不同的是,C++ I/O系统管理两个与一个文件相联系的指针。一个是读指针,它说明输入操作在文件中的位置;另一个是写指针,它下次写操作的位置。每次执行输入或输出时,相应的指针自动变化。所以,C++的文件定位分为读位置和写位置的定位,对应的成员函数是 seekg()和 seekp(),seekg()是 ......

对C/C++可变参数表的深层探索


引言
  C/C++语言有一个不同于其它语言的特性,即其支持可变参数,典型的函数如printf、scanf等可以接受数量不定的参数。如:
printf ( "I love you" ); 
printf ( "%d", a );
printf ( "%d,%d", a, b );
  第一、二、三个printf分别接受1、2、3个参数,让我们看看printf函数的原型:
int printf ( const ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号