用arm的汇编语言,求1到50的累加和,记住是arm下的汇编语言

用arm的汇编语言,求1到50的累加和,记住是arm下的汇编语言,第1张

将一个存储空间设置为1,预先留两个存储空间,一个用来做加数,一个用来做和数。这个程序需要循环,50次。

第一条指令是设置一个循环标示,

第二条指令存将初值为1的存储空间的数取出存入加数的存储空间。

第三条指令初值为1的那个空间自增1,相加后存到和数中去。

第四条指令,判断循环是否需要结束。

扩展资料:

汇编语言具有更高的机器相关性,更加便于记忆和书写,但又同时保留了机器语言高速度和高效率的特点。汇编语言仍是面向机器的语言,很难从其代码上理解程序设计意图,设计出来的程序不易被移植,故不像其他大多数的高级计算机语言一样被广泛应用。所以在高级语言高度发展的今天,它通常被用在底层,通常是程序优化或硬件 *** 作的场合。

参考资料来源:百度百科-汇编语言

汇编主要是要了解CPU指令及用法,常说的是PC机的x86汇编,指令是x86的复杂指令集。

arm汇编是arm的精简指令集,比x86容易学,程序格式倒是和x86汇编差不多。

C语言ARM的和x86的差不多,除了对硬件寄存器 *** 作不同,其它语法和流程都一样。

arm汇编程序每一行是指定arm core执行一条指令,每条指令都是硬件相关。

如:LDR R3, #1 ;用LDR指令将数值1放入R3寄存器准备参与运算

C语言与arm指令无关,只与逻辑运算有关,指定硬件地址的 *** 作才与硬件相关;

如果用arm编译器来编译,每行可能编译出1到多条arm指令。

如:i++; //变量 i 递增1等效于LDR R3,#1 ;

用LDR指令将数值1放入R3寄存器准备参与运算ADD R2, R2, R3 ;

用ADD指令将R2、R3寄存器里的数值相加后放回R2寄存器以上等效汇编的R2、R3寄存器只是为了举例,C语言不像汇编,不需要由程序员指定用哪个寄存器参与运算,编译器编译时会根据程序结构自动判断选择。

无论是c语言还是汇编语言,编译器编译后的结果是机器执行码,很多人因为汇编语言比较难懂及指令相关,所以以为它就是机器语言,其实它仍是人类设计的编写程序的语言,仍需要编译器编译成机器码才能执行,它只是比C语言更接近硬件而已。

以上就是关于用arm的汇编语言,求1到50的累加和,记住是arm下的汇编语言全部的内容,包括:用arm的汇编语言,求1到50的累加和,记住是arm下的汇编语言、arm编程与C语言的编程区别和方法、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9868610.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-02
下一篇2023-05-02

发表评论

登录后才能评论

评论列表(0条)

    保存