Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/macos/8.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Assembly 汇编编程keil u-version4中的While语句_Assembly_Arm - Fatal编程技术网

Assembly 汇编编程keil u-version4中的While语句

Assembly 汇编编程keil u-version4中的While语句,assembly,arm,Assembly,Arm,我想在汇编程序编程keil uversion 4中翻译此upcode: n = 5, fac = 1, next = 2 while next <= n do fact = fact * next next = next + 1`` end n=5, fac=1, 下一个=2 据我所知,nextKeil使用ARM处理器。基本顺序如下: mov r0, #5 ;n mov r1, #1 ;fact mov r2, #2 ;next b LoopCheck Loop:

我想在汇编程序编程keil uversion 4中翻译此upcode:

n = 5,
fac = 1,
next = 2

while  next <= n do

   fact = fact * next
   next = next + 1``

end
n=5,
fac=1,
下一个=2

据我所知,nextKeil使用ARM处理器。基本顺序如下:

mov r0, #5 ;n
mov r1, #1 ;fact
mov r2, #2 ;next
b LoopCheck

Loop:
mul r1, r1, r2
add r2, r2, #1

LoopCheck:
cmp r2, r0
ble Loop   
汇编程序的语法可能会有所不同。此外,硬件/OS可能更喜欢Thumb指令集;我不会知道的


您的代码片段省略了最复杂的细节——如何获取输入值以及如何处理结果。该算法是纯ARM的,与平台的细节无关;I/O不会是。

到目前为止您尝试了什么?