注册 登录
编程论坛 汇编论坛

WinDLX 新手求助怎么写一个偶数求和的代码

心中的十九 发布于 2014-06-08 11:15, 1777 次点击
对于WinDLX一无所知 也搜索了不少论团网站  不过毫无进展呀 求一个WinDLX代码的偶数求和代码 谢谢大家
8 回复
#2
zklhp2014-06-08 18:25
好高端的东东
#3
xkwy00002014-06-09 15:54
许多问题和汇编语言关联不上,
作业面太狭窄了,
一个月发几个帖子,
几年下来差不多了,
前几天有网友发帖求代笔,
用汇编语言写份情书
#4
hu9jj2014-06-09 21:00
万能的电脑无所不能
#5
心中的十九2014-06-12 15:13
回复 楼主 心中的十九
;*********** WINDLX Ex.3: Factorial        *************
;*********** (c) 1991 G黱ther Raidl        *************
;*********** Modified: 1992 Maziar Khosravipour *************
;--------------------------------------------------------------------------
; Program begin at symbol main
; requires module INPUT
; read a number from stdin and calculate the factorial (type: double)
; the result is written to stdout
;--------------------------------------------------------------------------

        .data
Prompt:     .asciiz     "An integer value >1 : "

PrintfFormat:    .asciiz     "Factorial = %gnn"
        .align        2
PrintfPar:    .word        PrintfFormat
PrintfValue:    .space        8


        .text
        .global    main
main:
        ;*** Read value from stdin into R1
        addi        r1,r0,Prompt
        jal        InputUnsigned
        
        ;*** init values
        ;movi2fp     f10,r1        ;R1 -> D0    D0..Count register
        addi        r5,r0,0
        addi        r7,r0,1     ;1 -> D2    D2..result
        addi        r9,r7,0
        addi        r2,r0,0
        addi        r8,r0,2
        divu        r3,r1,r8
        addi        r4,r0,2
                                addf   f16,f17,f18;
                                addf   f15,f19,f20;
loop:
        seq        r6,r5,r3
        bnez        r6,Finish

        add        r2,r2,r4
        add        r4,r4,r8
        add        r5,r5,r9
seq        r6,r5,r3
        bnez        r6,Finish

        add        r2,r2,r4
        add        r4,r4,r8
        add        r5,r5,r9
seq        r6,r5,r3
        bnez        r6,Finish

        add        r2,r2,r4
        add        r4,r4,r8
        add        r5,r5,r9
        j        loop        
Finish:     ;*** write result to stdout
        movi2fp        f11,r2
        cvti2d        f2,f11
        
        sd        PrintfValue,f2
        addi        r14,r0,PrintfPar
        trap        5
               
        ;*** end
        trap        0   
        
#6
心中的十九2014-06-12 15:15
回复 2 楼 zklhp
楼主自己找来代码了按照5的整数倍代码改编的; 谢谢你
#7
心中的十九2014-06-12 15:16
回复 2 楼 zklhp
同样谢谢你  楼主改好代码了
#8
心中的十九2014-06-12 15:17
回复 3 楼 xkwy0000
同谢谢
#9
心中的十九2014-06-12 15:17
回复 4 楼 hu9jj
同谢谢   各位版主大人
1