用汇编语言实现从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的十六进制)

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

相关文章

  • 汇编语言LDR指令和LDR伪指令详解

    汇编语言LDR指令和LDR伪指令详解

    这篇文章主要介绍了汇编语言LDR指令和LDR伪指令详解,伪指令是用来自动拆分代码值的,会把一条语句拆分成多条语句,本文结合示例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2023-01-01
  • 汇编程序输出“Hello world”的实现

    汇编程序输出“Hello world”的实现

    这篇文章主要介绍了汇编程序输出“Hello world”的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-01-01
  • 汇编 函数调用的实现

    汇编 函数调用的实现

    这篇文章主要介绍了汇编 函数调用的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-02-02
  • 8086汇编语言nasm版本

    8086汇编语言nasm版本

    这篇文章主要介绍了8086汇编语言nasm版本,本文给大家介绍的非常详细,具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-01-01
  • 王爽 汇编语言学习笔记(详细)

    王爽 汇编语言学习笔记(详细)

    王爽汇编语言第三版是一款高清完整版的专业编程图书,该书结构设计合理,内容全面涵盖知识点丰富,适合自学者使用,有需要者快来
    2020-01-01
  • 汇编 JCC指令表与笔记

    汇编 JCC指令表与笔记

    这篇文章主要介绍了汇编 JCC指令表与笔记,需要的朋友可以参考下
    2020-01-01
  • X86汇编调试环境搭建的过程

    X86汇编调试环境搭建的过程

    本次使用vscode搭建的,需要的插件有X86 and X86_64 Assembly(也可以使用masm插件),还有一个hexdump for VSCode。 安装NASM,并添加到环境变量,下面看下X86汇编调试环境搭建的过程吧
    2021-11-11
  • x86汇编DOS编程环境搭建过程

    x86汇编DOS编程环境搭建过程

    在学习x86汇编时,第一步是搭建一个可以编译、运行代码的环境,这个搭建方法也真的超简单,本文重点给大家介绍x86汇编DOS编程环境搭建过程,感兴趣的朋友一起看看吧
    2021-11-11
  • C 表达式中的汇编指令

    C 表达式中的汇编指令

    这篇文章主要介绍了C 表达式中的汇编指令,需要的朋友可以参考下
    2020-01-01
  • UEFI开发基础HII代码示例

    UEFI开发基础HII代码示例

    这篇文章主要为大家介绍了UEFI开发基础HII代码示例详解,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2022-06-06

最新评论