TAlphaColorF = record class operator Add(const Color1, Color2: TAlphaColorF): TAlphaColorF; class operator Subtract(const Color1, Color2: TAlph...
分类:
其他好文 时间:
2015-05-09 19:01:27
阅读次数:
211
①led_sp.bin: start.o led.o#led_sp.bin是由start.o 和 led.o 生成②arm-linux-ld -Ttext 0x0 -o led_sp.elf $^ arm-linux-objcopy -O binary led_sp.elf led_sp.bin a...
分类:
其他好文 时间:
2014-12-30 20:25:38
阅读次数:
221
问题引入:Linux的elf文件一开始理解起来的确很难,有的人可能会去看《linkersandloaders》,这书的确好,但是没有详细的解释很多细节,尤其是从汇编语言视角。我读了这本书很多地方后还是不明白,然后我又读了IBM360计算机的汇编器设计文档,里面详解了二次扫描汇编器的设计原..
分类:
编程语言 时间:
2014-11-01 06:28:29
阅读次数:
225
汇编程序会经过二次遍历,有些符号引用会被标记为可重定位,在编译好后他们的偏移值是其在代码内部的偏移值,即LC计数器的值,当载入内存运行时,由于起始加载地址会不确定,所以会在加载后把代码段所在的内存起始地址加到符号引用原有的偏移上,这就叫重定位。比如一个jmpabc..
分类:
系统相关 时间:
2014-11-01 06:26:01
阅读次数:
191