用ARM汇编语言设计程序实现求和1+2+3+4+……+100 能教我吗

用ARM汇编语言设计程序实现求和1+2+3+4+……+100 能教我吗,第1张

我这团族拍个是键盘输入然后求和十进制显示的

这是自动生成的代码模板

STACKS SEGMENT STACK 堆栈段

DW128 DUP(?) 注意这里只有128个字节

STACKS ENDS

DATAS SEGMENT 数据段

请在这里定义您的数据FLAG DB0

RE DW0

DATAS ENDS

CODES SEGMENT 代码段

ASSUMECS:CODES,DS:DATAS

START: MOV AX,DATAS初始化

MOV DS,AX

请在这里添加您的代码

PART1: MOV AH ,01H 键盘输入0~100任意数

INT 21H

CMP AL,0DH

JZPART2

SUB AL,'0'

PUSH AX

MOV AX,RE

SHL AX,1

PUSH AX

MOV CL,2

SHL AX,CL

POP BX

ADD AX,BX

POP BX

MOV BH,0

ADD AX,BX

MOV RE,AX

JMP PART1

PART2: MOV AX,RE

PART3: MOV CX,AX 求和塌羡

DEC AX

ADD RE,AX

LOOP PART3

MOV AX,RE

MOV CX,0十进制显示

MOV BX,10

PART4: MOV DX,0

DIV BX

ADD DL,30H

PUSH DX

INC CX

CMP AX,0

JNZ PART4

PART5: POP DX

MOV AH,2

INT 21H

LOOP PART5

MOV AX,4C00H退出程序

INT 21H

CODES ENDS

END START

直接穗颤复制过去用吧

最简单的办法,你用C实现该功能,然后仿真运行可以查看生成的汇编代码。

C语言原型

void strCpy(char *pDst, const char *pSrc)

{

 while(*pSrc)

 {

  *pDst = *pSrc

  pDst ++

  pSrc ++

 }

}

仿真编译结果

     8:         while(*pSrc) 

     9:         { 

0x00000EF0 E003      B        0x00000EFA

    10:                 *pDst = *pSrc 

0x00000EF2 780A      LDRB     r2,[r1,#0x00]

0x00000EF4 7002      STRB     r2,[r0,#0x00]

    11:                 pDst ++ 

0x00000EF6 1C40      ADDS     r0,r0,#1

    12:                 pSrc ++ 

    13:         } 

0x00000EF8 1C49      ADDS     r1,r1,#1

     8:         while(*pSrc) 

     9:         { 

    10:    敏世             *pDst = *pSrc 

    11:                 pDst ++ 

    12:                 pSrc ++ 

    13:         } 

0x00000EFA 780A      LDRB     r2,[r1,#0x00]

0x00000EFC 2A00      CMP      r2,#0x00

0x00000EFE D1F8      BNE      0x00000EF2

    14: }

然后取出其中的汇编代码就改亮行了

LOOP

 LDRB  R2, 桥歼肢[R1]

 STRB  R2, [R0]

 

 ADDS R0, R0, #1

 ADDS R1, R1, #1

 LDRB R2, [R1]

 CMP  R2, #0

 BNE  LOOP

 BX  LR

注释参考C语言函数

汇编程序是好多种类,不同体系结构有不同汇编程序规范,如51、X86、DSP、arm都有自己的汇乎亩迹编设计规范耐宏的。岁并

所以汇编程序设计基于ARM体系结构,就是指ARM平台下的汇编语言了


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

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

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

发表评论

登录后才能评论

评论列表(0条)

保存