Linux中国 Linux中国门户站!
设为主页 设为主页
收藏本站 收藏本站
 
当前位置 :首页 ->Linux技术 ->系统管理 ->正文

和luster一起学习在linux下使用汇编语言(4)

来源:Linux-cn.com 作者:Webmaster 时间:2007-05-05 点击: [收藏] [投稿]

  4. Metaprogramming

  汇编代码编写程序是非常枯燥的,但是通常是程序的一些关键的部分. 你应该根据自己的任务选择合适的开发工具, 如果不适合用汇编的场合最好还是别用, C, Ocaml, perl, Scheme, 都是其他可以选择使用的好的开发工具. 但是, 某些场合这些开发工具可能不能提供足够的对机器的控制能力, 此时, 汇编语言就可以发挥作用了.这些场合,你常常学要结合macroprocessing和metaprogramming. 纯粹的汇编代码通常是不够用的, 你要把自己的代码和C 语言代码link起来.

  External filters

  无论你的汇编器支持怎么样的宏,或者你使用什么样的语言(例如C), 这种语言应该对于你来说是足够清晰的,你可以在Makefile里面使用这样的规则来用一些扩展的filters来过滤你的文件:


%.s: %.S other_dependencies $(FILTER) $(FILTER_OPTIONS) < $< > $@

  Metaprogramming

  不使用扩展的filter来展开这些宏,也可以写一些程序来产生其他的程序的一部分或者全部.

  例如,你可以使用程序来输出一些源码:

  · 产生标准的数学函数sin/cos等数学函数值查找表.

  · 将我们的bitmap图片文件快速显示的函数

  · 用自己写的perl/shell/scheme脚本来产生一些我们自己的特定的汇编代码.

  · 用程序来生产初始化和结束处理的代码,对数据表的描述代码等.

  · 等等

  待续。。。




 如果您对本文有任何疑问或者建议,请到讨论区发表您的意见: >> 论坛入口 <<



上一篇:和luster一起学习在linux下使用汇编语言(3)   下一篇:和luster一起学习在linux下使用汇编语言(5)

文章评论】 【收藏本文】 【推荐好友】 【打印本文】 【我要投稿】 【论坛讨论
更多相关文章
Power by linux-cn.com 粤ICP备05006655号