用汇编语言实现从1加到100的方法(1+2+...+100)

 更新时间:2020年01月18日 11:35:00   作者:霜沐林  
这篇文章主要介绍了用汇编语言实现从1加到100的方法(1+2+...+100),文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧

用汇编语言实现1+2+...+100

;课堂作业
;计算1+2+...+100
DATA SEGMENT
 COUNT DW 0  ;计数
DATA ENDS  

STACK SEGMENT PARA STACK
 BUF DW 20H DUP (0)
 LEN EQU $-BUF
STACK ENDS

CODESEG SEGMENT
ASSUME CS:CODESEG,SS:STACK,DS:DATA
START:
;初始化堆栈段ss和数据段ds
 MOV AX,STACK
 MOV SS,AX
 MOV SP,LEN
 MOV AX,DATA
 MOV DS,AX
 
 MOV CX,64H ;循环100次
 MOV AX,0
S:
  ADD COUNT,01H
  ADD AX,COUNT
  LOOP S
  
  MOV DL,AL
  MOV AL,AH
  CALL DISP_2_HEX
  MOV AL,DL
  CALL DISP_2_HEX
  CALL DISP_CREF
  MOV AH,4CH
  INT 21H

 
;将AL的高四位与低四位分别输出
DISP_2_HEX:
 PUSH AX
 PUSH BX
 PUSHF
 MOV AH,0 ;清零
 MOV BL,10H ;作除法
 DIV BL ;AL :商 高位 AH 余数 低位
 CALL DISP_1_HEX ;输出AL的结果
 MOV AL,AH
 CALL DISP_1_HEX
 POPF
 POP BX
 POP AX
RET

;输出AL的数字和字母
DISP_1_HEX: 
 PUSH AX
 PUSH DX
 PUSHF
 MOV DL,AL
 CMP DL,09
 JBE L_1 ;小于等于9则跳过下一条语句
 ADD DL,27H ;大于10则转换为小写字母并执行到下面的L_1的RET结束
        ;数字10与字符a差为39(27H)
;数字输出(1的ascii码为31H)
L_1: 
 ADD DL,30H ;数字转换为字符
 MOV AH,02H
 INT 21H
 POPF
 POP DX
 POP AX 
RET

;输出回车换行
DISP_CREF: 
 PUSH DX
 PUSH AX
 MOV AH,02H
 MOV DL,0DH
 INT 21H
 MOV DL,0AH
 INT 21H
 POP AX
 POP DX
RET

CODESEG ENDS
END START

 输出结果为13ba(5050的十六进制)

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

相关文章

  • UEFI开发基础HII代码示例

    UEFI开发基础HII代码示例

    这篇文章主要为大家介绍了UEFI开发基础HII代码示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06
  • 详解汇编语言中中括号[]作用及lea和mov指令的区别

    详解汇编语言中中括号[]作用及lea和mov指令的区别

    这篇文章主要介绍了汇编语言中中括号[]作用及lea和mov指令的区别,本文分步骤给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-01-01
  • 一位数乘法的汇编语言实现方法

    一位数乘法的汇编语言实现方法

    这篇文章主要介绍了一位数乘法的汇编语言实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • 图文详解通俗易懂的汇编语言寄存器

    图文详解通俗易懂的汇编语言寄存器

    这篇文章主要为大家介绍了寄存器的内容详解,文中通过精美清晰的图文方式让你一看就通俗易懂,有需要的朋友可以借鉴参考学习下,希望能够有所帮助
    2021-11-11
  • 汇编语言功能实现数据复制实例详解

    汇编语言功能实现数据复制实例详解

    这篇文章主要为大家介绍了汇编语言功能实现数据复制的实例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步
    2021-11-11
  • 汇编语言学习assume的作用详解

    汇编语言学习assume的作用详解

    这篇文章主要为大家介绍了汇编语言学习assume的作用详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2021-11-11
  • 8086汇编开发环境搭建和Debug模式介绍(图文详解)

    8086汇编开发环境搭建和Debug模式介绍(图文详解)

    这篇文章主要介绍了8086汇编开发环境搭建和Debug模式介绍,本文图文并茂给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-01-01
  • 详解汇编语言MOV指令

    详解汇编语言MOV指令

    在汇编语言中,MOV指令是数据传送指令,也是最基本的编程指令,这篇文章主要介绍了汇编语言MOV指令,需要的朋友可以参考下
    2020-01-01
  • 使用汇编实现字符串的大小写转换

    使用汇编实现字符串的大小写转换

    这篇文章主要介绍了使用汇编实现字符串的大小写转换,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • C语言ASM汇编内嵌语法详解

    C语言ASM汇编内嵌语法详解

    这篇文章主要介绍了C语言ASM汇编内嵌语法,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-01-01

最新评论