摘要: 第二个汇编程序请点评例18.2.求一组数的最大值的汇编程序#PURPOSE: This program finds the maximum number of a# set of data items.##VARIABLES: The registers have the following uses:## %edi - Holds the index of the data item being examined# %ebx - Largest data item found# %eax - Current data item## The following memory locatio.. 阅读全文
posted @ 2014-03-03 10:47 西芒xiaoP 阅读(252) 评论(0) 推荐(0) 编辑
摘要: 例18.1.最简单的汇编程序#PURPOSE: Simple program that exits and returns a# status code back to the Linux kernel##INPUT: none##OUTPUT: returns a status code. This can be viewed# by typing## echo $?## after running the program##VARIABLES:# %eax holds the system call number# %ebx holds the return ... 阅读全文
posted @ 2014-03-03 10:23 西芒xiaoP 阅读(971) 评论(0) 推荐(0) 编辑
摘要: 2014,大四,由于毕业设计的需求,需要学习eclipse插件开发.1.先了解eclipse平台的结构.eclipse由eclipse社区负责,开源,EPL(eclipse public license)协议管理代码.eclipse社区的主要项目:l 富客户端平台l 企业级项目开发l 嵌入式系统和设备项目开发l 富internetl 程序开发框架l 程序生命周期l 面向服务架构关于这一个知识点,可以参考周金根先生的博客http://zhoujg.blog.51cto.com/1281471/516833,学习之后受益匪浅.总体来说:运行时和插件(Platform Runtime and Plu 阅读全文
posted @ 2014-02-18 11:10 西芒xiaoP 阅读(236) 评论(0) 推荐(0) 编辑
摘要: 转载:周金根http://zhoujg.blog.51cto.com/1281471/516833Eclipse:Eclipse平台技术概述2010-10-19 13:35:00标签:Eclipse休闲职场原创作品,允许转载,转载时请务必以超链接形式标明文章原始出处、作者信息和本声明。否则将追究法律责任。http://zhoujg.blog.51cto.com/1281471/516833在OpenExpressApp make business engineers develop applications中说过先考虑使用EMF先实现一个TOGAF9的建模工具来综合的了解建模更方面的知识,然后 阅读全文
posted @ 2014-02-12 11:04 西芒xiaoP 阅读(470) 评论(0) 推荐(0) 编辑
摘要: 原文链接:http://blog.csdn.net/wyzxg/article/details/5027738这几天在下载RPM包的时候,总会看见x86,x86-64,IA64,i386,i586等,这些都是cpu的架构,有点记不清了,所以特此记录下,以备日后查询CPU架构Architecture ,结构、架构,这个词用于 CPU 的时候是指 CPU “接受和处理信号的方式”,及其内部元件的组织方式。CPU架构,从大的层面分两类——CISC、RISCx86CISC就是复杂指令集计算机,目前专指 x86 和 x86-64 两类其中 x86 又叫 IA32,即 Intel Architecture 阅读全文
posted @ 2014-01-23 09:56 西芒xiaoP 阅读(18457) 评论(0) 推荐(0) 编辑
摘要: 静态库请点评有时候需要把一组代码编译成一个库,这个库在很多项目中都要用到,例如libc就是这样一个库,我们在不同的程序中都会用到libc中的库函数(例如printf),也会用到libc中的变量(例如以后要讲到的environ变量)。本节介绍怎么创建这样一个库。我们继续用stack.c的例子。为了便于理解,我们把stack.c拆成四个程序文件(虽然实际上没太大必要),把main.c改得简单一些,头文件stack.h不变,本节用到的代码如下所示:/* stack.c */char stack[512];int top = -1;/* push.c */extern char stack[512]; 阅读全文
posted @ 2014-01-22 14:48 西芒xiaoP 阅读(486) 评论(0) 推荐(0) 编辑
摘要: 用C写程序比直接用汇编写程序更简洁,可读性更好,但效率可能不如汇编程序,因为C程序毕竟要经由编译器生成汇编代码,尽管现代编译器的优化已经做得很好了,但还是不如手写的汇编代码。另外,有些平台相关的指令必须手写,在C语言中没有等价的语法,因为C语言的语法和概念是对各种平台的抽象,而各种平台特有的一些东西就不会在C语言中出现了,例如x86是端口I/O,而C语言就没有这个概念,所以in/out指令必须用汇编来写。C语言简洁易读,容易组织规模较大的代码,而汇编效率高,而且写一些特殊指令必须用汇编,为了把这两方面的好处都占全了,gcc提供了一种扩展语法可以在C代码中使用内联汇编(Inline Assemb 阅读全文
posted @ 2014-01-22 14:33 西芒xiaoP 阅读(691) 评论(0) 推荐(0) 编辑
摘要: 为什么汇编程序的入口是_start,而C程序的入口是main函数呢?本节就来解释这个问题。在讲例18.1 “最简单的汇编程序”时,我们的汇编和链接步骤是:$ as hello.s -o hello.o$ ld hello.o -o hello以前我们常用gcc main.c -o main命令编译一个程序,其实也可以分三步做,第一步生成汇编代码,第二步生成目标文件,第三步生成可执行文件:$ gcc -S main.c$ gcc -c main.s$ gcc main.o-S选项生成汇编代码,-c选项生成目标文件,此外在第2节 “数组应用实例:统计随机数”还讲过-E选项只做预处理而不编译,如果不 阅读全文
posted @ 2014-01-22 14:16 西芒xiaoP 阅读(560) 评论(0) 推荐(0) 编辑
摘要: ELF文件请点评ELF文件格式是一个开放标准,各种UNIX系统的可执行文件都采用ELF格式,它有三种不同的类型:可重定位的目标文件(Relocatable,或者Object File)可执行文件(Executable)共享库(Shared Object,或者Shared Library)共享库留到第4节 “共享库”再详细介绍,本节我们以例18.2 “求一组数的最大值的汇编程序”为例讨论目标文件和可执行文件的格式。现在详细解释一下这个程序的汇编、链接、运行过程:写一个汇编程序保存成文本文件max.s。汇编器读取这个文本文件转换成目标文件max.o,目标文件由若干个Section组成,我们在汇编程 阅读全文
posted @ 2014-01-22 10:32 西芒xiaoP 阅读(348) 评论(0) 推荐(0) 编辑
摘要: 原文链接:http://blog.csdn.net/qingkong8832/article/details/6687793一、int型变量在内存中存储详细情况//By Richard#include #include int main(){ int i1=0; int i2=1; int i3=-1; int i4=127; int i5=-127; int i6=128; int i7=-128; int i8=255; int i9=-255; int i10=256; int i11=-256; int i12=(... 阅读全文
posted @ 2014-01-22 09:45 西芒xiaoP 阅读(449) 评论(0) 推荐(0) 编辑