三九宝宝网宝宝教育教学论文

在c语言C或G中如何嵌入汇编

02月17日 编辑 39baobao.com

[请问如何自学嵌入式如何学习嵌入式c语言]嵌入式比单片机高级的多,因为它的上面可以安装操作系统,来实现更加复杂的操作。 嵌入式的概念也很大,包含的许多东西,尤其到了软件这块,分支很多,比如工业控制、图形、网络、手机...+阅读

今天有点时间,重新改下了下,为避免因编译器和平台实现而出现的问题,我写了三个版本,分别是windows下vc6.0,windows下mingw和cygwin和linux下的gcc/g++。vc6.0:#includeconst char* input = "%d";const char* output = "%d\n";int n;int main(){ __asm { lea eax, n push eax push input loopx: call scanf cmp eax, 1 jne end mov ecx, n jecxz end dec ecx push ecx push output call printf add esp, 8 jmp loopx end: add esp, 8 }return 0;}mingw/cygwin:#includeconst char* input = "%d";const char* output = "%d\n";int n;int main(){ __asm__ ( "loop: \n" "pushl $_n \n" "pushl _input \n" "call _scanf \n" "addl $8, %esp \n" "cmpl $1, %eax \n" "jne end \n" "movl _n, %ecx \n" "jecxz end \n" "decl %ecx \n" "pushl %ecx \n" "pushl _output \n" "call _printf \n" "addl $8, %esp \n" "jmp loop \n" "end:" ); return 0;}linux gcc/g++:#includeconst char* input = "%d";const char* output = "%d\n";int n;int main(){ __asm__ ( "pushl $n \n" "pushl input \n" "loop: \n" "call scanf \n" "cmp $1, %eax \n" "jne end \n" "movl n, %ecx \n" "jecxz end \n" "decl %ecx \n" "pushl %ecx \n" "pushl output \n" "call printf \n" "addl $8, %esp \n" "jmp loop \n" "end: \n" "addl $8, %esp \n"); return 0;}

以下为关联文档:

C语言嵌入式C刚开始学的时候,学习用汇编程序写你会对硬件的理解更深些, 当你对硬件比较熟悉的时候,编写这些程序就简单了。你再用C语言写这些程序的时候就会发现用C写的程序是多么的简单,简...

在C语言中如何绝对值呢方法一:用C语言中自带的绝对值函数表示: 如果a是整数: #include<stdio.h> #include<math.h> int a=100,b; b=abs(a); printf("%d",b); 如果a是浮点数: #include<stdio.h> #include...

在c语言中如何获取当前日期#include <time.h&gt; 要添加这个头文件。 time_t rawtime; struct tm * target_time; time ( &rawtime ); //获取当前时间,存rawtime里 target_time = localtime ( &rawtime )...

13 5怎样在C语言中取得当前日期或时间C语言gmtime()函数:获取当前时间和日期头文件: #include定义函数: struct tm *gmtime(const time_t *timep); 函数说明:gmtime()将参数timep 所指的time_t 结构中的信息转换成真实...

C学习笔记一 C语言和汇编语言的区别C学习笔记(一) C语言和汇编语言的区别 2016-07-11 09:43 162人阅读 评论(0) 收藏 举报 分类: C学习笔记(13) 版权声明:本文为博主原创文章,未经博主允许不得转载。 C学习笔记(五) C语言...

C语言中定义一个结构体如何在不同的 C文件中使用比如三个.c文件一个.h文件 1. c 2.c 3.c 4.h 这三个头文件都引用4.h include<4.h> 4.h中定义一个结构体类型struct test{}; 1.c中定义一个该结构体类型的全局变量struct tes...

如何自学Linux下C语言嵌入式编程开发板用友善之臂的吧 mini2440 连3.5寸屏500块钱的样子 有好几张DVD学习光盘 这款口碑比较高 嵌入式Linux操作系统学习规划 ARM+LINUX路线,主攻嵌入式Linux操作系统及其上应...

c语言或c如何自由创建数组C语言: int i=0; scanf("%d",&i);//输入i int *p=(int *)malloc(sizeof(int)*i); C++: int i=0; cin>>i; int *p=new int[i]; 5*4的: C语言: int i=0,j=0; scanf("%d",&i);//输入i sc...

如何在C语言中定义一个函数#includelt;stdio.hgt;nbsp;voidnbsp;main()nbsp;{nbsp;intnbsp;max(intnbsp;x,intnbsp;y);nbsp;intnbsp;a,b;nbsp;scanf(“%d%d“,amp;a,amp;b);nbsp;printf(“%d “,max(a...

推荐阅读
图文推荐