急!请高手帮我用汇编编下面的程序,并且要有流程图,谢谢了

2024-12-03 05:31:54
推荐回答(2个)
回答(1):

1×1到9×9运算一遍?

ORG 00H

SJMP START

ORG 30H

START:

MOV R0,#32H     ;从32H开始存放相乘结果

MOV R1,#1       ;R1存放第二个乘数

LOOP1:

MOV 30H, R1     ;将第二个乘数,准备比较

MOV R2,#1       ;第一个乘数从1开始

LOOP2:

MOV A, R1       ;将乘数放入A,B

MOV B, R2

MUL AB          ;相乘

MOV @R0,A       ;保存结果,结果小于255不需保存B

;INC R0

;MOV @R0,B ;结果小于255不需保存B

INC R0          ;保存数据的地址加1

MOV A, R2       ;准备比较两个乘数是否相等,

INC R2          ;第一个乘数加1

CJNE A,30H,LOOP2;乘数不等继续下一轮相乘

INC R1          ;乘数相等了,第二个乘数加1

CJNE R1,#0AH,LOOP1;到9结束,因为R1先加1,所以与10比较

AJMP $ ;RET ;停止或函数返回,

END 

不会吧?这个也需要流程图,很清楚了。 

补个图。为什么刚才图上不去,百度啊!

回答(2):

就是写一个用al作为入口的乘法子程序就行了。然后循环执行这个子程序1-9。框图就是这样。