社区
汇编语言
帖子详情
求任意输入的一个数的阶乘?
alpa
2003-06-16 05:58:50
求任意输入的一个数的阶乘,谁有这样的程序给我一个.谢谢!
如9的阶乘等于9*8*7*6*5*4*3*2*1,
...全文
380
6
打赏
收藏
求任意输入的一个数的阶乘?
求任意输入的一个数的阶乘,谁有这样的程序给我一个.谢谢! 如9的阶乘等于9*8*7*6*5*4*3*2*1,
复制链接
扫一扫
分享
转发到动态
举报
写回复
配置赞助广告
用AI写文章
6 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
xiaott
2003-06-17
打赏
举报
回复
;以下代码可满足求9的阶乘,若大于9应如何处理呢?
;如:10,11,……99,100,甚至更大,请高手指点!!
code segment
assume cs:code
start: xor dx,dx
mov cx,9
mov ax,2
mov bx,ax
inc bx
lop: mul bx ;连乘:AX*BX,结果高位字存DX,低位字存AX
inc bx
cmp bx,cx
ja exit
jmp lop
exit: mov ah,4ch
int 21h
code ends
end start
用户 昵称
2003-06-17
打赏
举报
回复
http://homepages.ius.edu/rwisman/c335/Html/Chapter5-1.htm
xiaott
2003-06-17
打赏
举报
回复
茶茶哥,你的程序是死循环啊,如果方便的话请写上注释或用编译器调一下,谢谢!
teal
2003-06-17
打赏
举报
回复
呵呵,忘了,n就是自己给定的,n也不要太大呀,当结果超过了41个字节能表示的范围也会溢出得
当然 可以把 结果再定义大一点
teal
2003-06-17
打赏
举报
回复
大概是这样吧,用41个字节得空间来保存结果
每乘一次,都从结果中取出两个字节,与bx得内容相乘
cx:
di: 记录低两字节向高两字节得进位情况
si: 结果的指针
bx: 乘数
data segment
result db 41 dup(0)
data ends
code segment
assume cs:code ,ds:data
mov ax,data
mov ds,ax
start: xor dx,dx
mov bx, n
mov ax, n
lop: mov si,offset result
mov di,0
mov cx,20
lop1: mov [si],dx
mul bx ;连乘:AX*BX,结果高位字存DX,低位字存AX
add ax,di
mov di,0
add [si],ax
jnc pass
mov di,1
pass:
mov ax,[si+2]
inc si
inc si
dec cx
loop lop1
dec bx
jnz lop
ja exit
jmp lop
exit: mov ah,4ch
int 21h
code ends
end start
zuolihua
2003-06-17
打赏
举报
回复
任意输入的一个数的阶乘
不可能啊,你必须指定一个范围
输入
任意
数
值
求
阶乘
.py
输入
任意
数
值
求
阶乘
.py
给出
一个
任意
数
,
求
它的
阶乘
可以随意给出
一个
数
,
求
得这个
数
的
阶乘
,然后输出答案。功能比较好!
阶乘
及
阶乘
和的两种编法
求
任意
n 个
数
的
阶乘
和及n的
阶乘
!输出N的
阶乘
及n的
阶乘
和!!!
求
数
字
阶乘
之和(1!+2!+3!+...+10!)
可以
任意
输入
开始
数
字和结束
数
字,能
求
得起止
数
字间的
阶乘
之和
求
N的
阶乘
(大整
数
乘法)
【问题描述】 ... 该文件只包含
一个
正整
数
,表示需要
求
该正整
数
的
阶乘
。 【输出形式】 输出文件为当前目录下的factor.out。 该文件只包含
一个
正整
数
,表示该正整
数
的
阶乘
,每行最多输出50个
数
字。
汇编语言
21,458
社区成员
41,601
社区内容
发帖
与我相关
我的任务
汇编语言
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
复制链接
扫一扫
分享
社区描述
汇编语言(Assembly Language)是任何一种用于电子计算机、微处理器、微控制器或其他可编程器件的低级语言,亦称为符号语言。
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章