编程求10阶乘(汇编语言)

编程求10阶乘(汇编语言),第1张

以下是一种基于x86架构的汇编语言(NASM)实现:

Copy code

section .data

result db 1 初始化结果为1

section .text

global _start

_start:

mov ecx, 10 使用ecx寄存器计数

cmp ecx, 0 检查10是否为0,是则跳过循环

je done

loop:

mul byte[result] 乘以目前的结果

dec ecx 计数器减1

cmp ecx, 0 如果计数器为0,则跳出循环

jne loop

done:

结束程序

mov eax, 1系统调用号1代表退出

xor ebx, ebx 返回值为0

int 0x80 执行系统调用

以上程序将10的阶乘计算在result变量中。由于10的阶乘为一个很大的数,需要使用一个64位变量来保存结果,但由于使用了单字节变量作为示例,仅适用于小型数据输入。

//5. 用循环程序求10的阶乘。(3628800)

public class Demo05{

public static void main(String[] args){

//10的阶乘

// result = 1*2*3*4*5...*10

int result = 1

for(int i = 2i<=10i++){

result *= i

}

System.out.println("10的阶乘结果为:"+result)

}

}

10的阶乘的结果为:3628800。

#include<stdio.h>

int main(){

  int i=1,sum=1

  while(i<=10){

      sum*=i

      i++

  }

  printf("10的阶乘%d\n",sum)

  return 0

}

扩展资料:

while语句的语法:

1、do <语句>while(<条件>)

2、while(<条件>) <语句>

while语句的一般表达式为:while(表达式){循环体}。

while与do while的区别

假设条件表达式一开始就是不成立的。

while结构的循环体一遍也不会运行。

do…while结构的循环体运行了一遍。

循环语句是根据循环条件反复执行相同的语句,直到循环条件不成立。

利用do while循环的特点,可写出菜单程序。

参考资料来源:百度百科-循环语句


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

原文地址: http://outofmemory.cn/yw/8057115.html

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

发表评论

登录后才能评论

评论列表(0条)

保存