一个简单的汇编小程序!!!!

时间:2022-04-13 01:11:13
一个变量i的累加程序
i从1,开始累加,1+2+3+4...<55  时,显示出i的最后一个数的值

4 个解决方案

#1


因为小弟才初学,有些不太懂!!!还请好心人帮帮忙,带我入门。。。
如果可以的话请写出详细的代码,小弟将不胜感谢

#2


用分支+循环结构呀,设定两个变量一个i初值1;一个是和num初值0,
判断num与55的关系,——》i+1———》num+1
具体语法请看书

#3


; NAME TEST
;     WRITE BY CPTANG     cptang@126.com
TEST SEGMENT CODE
INC_DATA      EQU    30H       ;增量值的位置
SUM_DATA      EQU    31H       ;结果保存位置

CMPI MACRO X,I
MOV A,X
CLR C
SUBB A,#I
ENDM

         ORG    0040H
      MOV   INC_DATA,   #0
      MOV   SUM_DATA,   #0 
SUM:       
      MOV   A, INC_DATA
MOV   R0,SUM_DATA
INC   A
      ADD   A, R0
MOV   SUM_DATA,A
CLR   C
      CMPI  SUM_DATA, 55
      JC    SUM
      END


编译结果如下
正在汇编 test.asm...  
.\test.asm - 0 错误 (s), 0   警告 (s).

#4


上面的回复排版不舒服,我重新排版一下,内容一样。只是便于看代码

;     WRITE BY CPTANG     cptang@126.com
;     NAME         TEST
      TEST SEGMENT CODE

INC_DATA      EQU    30H       ;增量值的位置
SUM_DATA      EQU    31H         ;结果保存位置

CMPI MACRO X,I
MOV     A,X
CLR     C
SUBB    A,#I
ENDM

      ORG    0040H
                 
      MOV   INC_DATA,   #0
      MOV   SUM_DATA,   #0 
SUM:       
      MOV   A,    INC_DATA
      MOV   R0,   SUM_DATA
      INC   A
      ADD   A,    R0
      MOV   SUM_DATA,A
      CLR   C
      CMPI  SUM_DATA, 55
      JC    SUM
      END

编译结果如下
正在汇编 test.asm...  
.\test.asm - 0 错误 (s), 0   警告 (s).

#1


因为小弟才初学,有些不太懂!!!还请好心人帮帮忙,带我入门。。。
如果可以的话请写出详细的代码,小弟将不胜感谢

#2


用分支+循环结构呀,设定两个变量一个i初值1;一个是和num初值0,
判断num与55的关系,——》i+1———》num+1
具体语法请看书

#3


; NAME TEST
;     WRITE BY CPTANG     cptang@126.com
TEST SEGMENT CODE
INC_DATA      EQU    30H       ;增量值的位置
SUM_DATA      EQU    31H       ;结果保存位置

CMPI MACRO X,I
MOV A,X
CLR C
SUBB A,#I
ENDM

         ORG    0040H
      MOV   INC_DATA,   #0
      MOV   SUM_DATA,   #0 
SUM:       
      MOV   A, INC_DATA
MOV   R0,SUM_DATA
INC   A
      ADD   A, R0
MOV   SUM_DATA,A
CLR   C
      CMPI  SUM_DATA, 55
      JC    SUM
      END


编译结果如下
正在汇编 test.asm...  
.\test.asm - 0 错误 (s), 0   警告 (s).

#4


上面的回复排版不舒服,我重新排版一下,内容一样。只是便于看代码

;     WRITE BY CPTANG     cptang@126.com
;     NAME         TEST
      TEST SEGMENT CODE

INC_DATA      EQU    30H       ;增量值的位置
SUM_DATA      EQU    31H         ;结果保存位置

CMPI MACRO X,I
MOV     A,X
CLR     C
SUBB    A,#I
ENDM

      ORG    0040H
                 
      MOV   INC_DATA,   #0
      MOV   SUM_DATA,   #0 
SUM:       
      MOV   A,    INC_DATA
      MOV   R0,   SUM_DATA
      INC   A
      ADD   A,    R0
      MOV   SUM_DATA,A
      CLR   C
      CMPI  SUM_DATA, 55
      JC    SUM
      END

编译结果如下
正在汇编 test.asm...  
.\test.asm - 0 错误 (s), 0   警告 (s).