汇编语言与C语言的理解

来源:互联网 发布:电信网络电视机顶盒 编辑:程序博客网 时间:2024/06/14 08:04

汇编语言的基础知识重点内容
0、学习汇编语言的意义:
基本上所有的处理器的终端,在启动代码的时候都是要使用到汇编语言的
汇编语言的效率可以很高

1、汇编语言框架

.section .data    <初始化的数据>.section .bss    <未初始化的数据>.section .text    //代码段.global __start__start:     <汇编代码>

对应于C语言的:

Int  main(){    Return 0;}

2、简单的赋值操作
C语言:

int a,b;a = 1;b = 3;b = a-2;

汇编语言:

mov r1,#1sub r1,r2,#2

3、选择操作
C语言:

if(a>b)   a= a+b;else   a= a-b;

汇编语言:

Mov  r1 ,#10Mov  r2,#8Cmp  r1,r2Bgt  branch1Add    r3,r1,r2//比较的结果都是在程序状态寄存器里面的branch1:  Sub  r3,r1,r2EndNop

4、循环语句:
C语言

int i = 0;int j = 0;for(;i<10;i++){    j++;    }return 0;

汇编语言

InitMov  r1,#0    Mov  r2,#0LOOP       CMP  r1,#10      BHS  LOOP_END      ADD  r2,#1      ADD  r1,#1B   LOOPLOOP_ENDNOPEND

5、调用简单的函数
汇编语言

Bl  funclBL 的指令:实现一个函数Funcl:Mov  r1,#2Mov  r2,#3Mov  pc       //需要修改我们的PC指针
原创粉丝点击