AT&T汇编学习以及binutils源代码分析
理查德工程师
人生没有白走的路,每一步都算数!
展开
-
(1)AT&T汇编笔记
(1).section命令声明段: 所有的汇编程序中都必须有文本段(.text)。 例如用法: .section .data .section .text .section .bss(2原创 2012-11-08 21:16:11 · 835 阅读 · 0 评论 -
(2)AT&T汇编笔记
(6).asciz命令用于在字符串的末尾添加空字符’\0’。(7)用汇编调用c库时,注意参数放入堆栈的顺序和c函数获取他们的顺序是相反的。还要注意尽管使用ld的-l参数指定库名称,但是还要使用-dynamic-linker来指定另外一个库,这个库是运行时加载动态库的程序,linux下为ld-linux.so.2。(8)注意avr单片机是不能使用动态链接库的,不排除你在avr单片机上面自己做原创 2012-11-09 21:36:10 · 912 阅读 · 1 评论 -
(4)AT&T汇编笔记
<!--@page {margin:2cm}p {margin-bottom:0.21cm; direction:ltr; color:#000000; text-align:justify; widows:0; orphans:0}p.western {font-family:"Times New Roman",serif; font-size:1原创 2012-11-24 23:26:42 · 911 阅读 · 0 评论 -
(3)AT&T汇编笔记
(13)优化内存访问: 内存访问是处理器执行的最慢功能之一。编写高性能的汇编语言程序时,最好尽可能的避免内存访问。目前大多数处理器使用了数据缓存,但是另外一个要考虑的问题是处理器如何处理内存的读取和写入。大多数处理器被优化为从数据段的开始位置,在特定的缓存块中读取和写入内存位置。 在奔腾4处理器中,缓存块的长度是64位,如果定义的数据元素超过了64位块的边界,就必须原创 2012-11-13 20:29:05 · 901 阅读 · 0 评论 -
(5)AT&T汇编笔记
<!--@page {margin:2cm}td p {margin-bottom:0cm; direction:ltr; color:#000000; text-align:justify; widows:0; orphans:0}td p.western {font-size:10pt}td p.cjk {font-family:"SimSu原创 2012-11-28 17:48:22 · 744 阅读 · 0 评论