1.DOS系统功能调用格式

MOV AH,调用号
设置入口参数
INT 21H;只有执行了这条指令才能实现真正的功能

2.INT 21H功能使用说明

①入口:AH = 00H 或AH = 4CH

功能:程序终止

②入口:AH = 02H,DL = 数据

功能:写DL中数据到显示屏

3.LOOP指令

指令格式:LOOP 指令

指令执行:①(CX) = (CX) - 1

②判断CX中的值,不为0则转至标号处执行循环;若为0则顺序向下继续执行。

4.汇编程序

;功能描述:使用INT 21H功能调用实现屏幕显示A~Z共26个字母
SSTACK SEGMENT STACK    ;堆栈段定义DW 64 DUP(?)      ;预留64个字单元
SSTACK ENDSCODE SEGMENT            ;代码段定义ASSUME CS:CODE,SS:SSTACK   ;将代码段的首地址与CS寄存器关联,将堆栈段的首地址与SS寄存器关联START: MOV CX,001AH     ;把循环次数26存入寄存器CX的低8位MOV DL,41H       ;把字母A的ASCII码送入DL寄存器
A1:    MOV AH,02H       ;为在显示屏上显示DL寄存器中的内容做准备INT 21H          ;INT 21H功能调用,将DL中内容显示在显示屏上INC DL           ;DL寄存器中内容加1,即DL中信息变为B的ASCII码PUSH CX          ;将CX寄存器中的内容入栈,保护信息MOV CX,0002H     ;设置延时时间为0002H,即过了延时时间0002H便开始显示下一个字母
A2:    LOOP A2          ;延时POP CX           ;将CX寄存器中内容出栈DEC CX           ;CX中内容减1即计数值减1JNZ A1           ;CX寄存器中内容不为0转A1即还没有显示完26个字母(此处理解可能存在偏差)MOV AX,4C00H     INT 21H          ;程序终止
CODE ENDSEND START

注意:在代码中必须使用ASSUME伪指令把代码段的首地址关联到CS寄存器。数据段关联到DS寄存器。在程序运行时,CS寄存器会自动加载代码段地址的值,而DS寄存器则不会,所以在程序开始时,需要手动将数据段的首地址保存到DS。

5.结果显示

【微机汇编语言学习笔记(一)】DOS功能调用——INT 21H功能调用显示A~Z相关推荐

  1. 【微机汇编语言学习笔记(四)】十进制数的ASCII转换为BCD码

    目的:从键盘输入五位十进制数的ASCII码,存放与3500H起始的内存单元中,将其转换为BCD码,再分别存入350AH起始的地址单元内.若输入不是十进制的ASCII,则对应存放结果的单元内容为&quo ...

  2. 【微机汇编语言学习笔记(五)】十六进制转ASCII码

    目的:将四位十六进制数203B存放于起始地址为3500H的内存单元中,把它们转换为ASCII码后存入起始地址是350AH的内存单元中. 设计思路:十六进制数0H~9H加上30H即可得到相应的ASCII ...

  3. windows下32位汇编语言学习笔记

    windows下32位汇编语言学习笔记 第一章  第一章 背景知识 80x86处理器的存储器 4个数据寄存器 EAX,EBX,ECX,EDX EAX寄存器 所有API函数的返回值都保存在EAX里,注意 ...

  4. 汇编语言学习笔记(续)

    15-18节课 tip:cpu与外设直接传送字符的ASCII 这里很多笔记采取图片形式,因为ppt上有,而且都和前面比较类似,认真看了前面的现在的都能理解了,就不再手敲一边添加帮助理解的文字了. 标志 ...

  5. 汇编语言学习笔记(终)

    第29-30节课 汇编语言程序格式 一.汇编程序功能 如图所示,表示了汇编语言程序的建立和处理过程.首先用编辑程序产生汇编语言的源程序,源程序就是用汇编语言的语句编写的程序,它是不能为机器所识别的,所 ...

  6. 微机原理换行代码_微机原理学习笔记

    基础概论 硬件设备 主机系统: CPU 存储器 输入输出接口 总线 CPU 微处理器简称CPU,是计算机的核心. 主要包括: 运算器 控制器 寄存器组 存储器 定义: 计算机中的记忆装置.用于存放计算 ...

  7. 32位汇编语言学习笔记(45)--测试简单文件操作接口(完)

     这是<Assembly Language step by step programming with linux>书中的最后一个程序,也是全书中的最复杂的一个程序. 首先看一下这个程 ...

  8. MIPS汇编语言学习笔记07:打印双精度浮点数

    课程原视频: https://www.bilibili.com/video/BV19J411y7pA?p=7 程序功能: 设定两个双精度浮点型数据,将其相加后打印输出. 代码: .datamyDoub ...

  9. win32汇编语言学习笔记(三)

    汇编语言学习笔记(三) CH3.Windows汇编基础 .386 .model flat,stdcall option casemap:none 定义程序使用的指令集.工作模式 相应的还有:.8086 ...

最新文章

  1. 设置VSCode快速切换多个项目窗口的快捷键Alt+E
  2. oracle第二章数据的运用,第二章:oracle_sql语句之限制(where子句)和排列数据(order by子句)...
  3. 数仓dw怎么建_网易严选如何打造数仓规范和评价体系
  4. MMU内存管理单元(看书笔记)
  5. synchronized原理_synchronized 底层原理与内存屏障
  6. php cgi漏洞,Nginx + PHP CGI的一个可能的安全漏洞
  7. LeetCode:Rotate Image
  8. python opencv天空提取_python利用opencv实现印章的提取
  9. java入学测试_算法历练之路——入学考试(JAVA)
  10. vue + elementui 通过父子组件实现弹框
  11. sql时间转换时分秒_SQL时分秒之间相互转换
  12. 第一课 控制div属性
  13. 【Win 10应用开发】认识一下UAP项目
  14. EXCEL:转换人民币大写
  15. 前端图片压缩 - H5Uni-App图片压缩
  16. 为什么说梯度的反方向是函数下降最快的方向
  17. 一键解锁,宿舍管理隐藏技能
  18. vanish_3.0_ban
  19. #彻底解决# opencv imdecode函数中打开图片,图片变色的问题
  20. 爱普生Epson XP-600 一体机驱动

热门文章

  1. Java如何xml转json字符串_xml字符串转json字符串
  2. 从键盘输入一个人的姓和名,然后将姓和名的首字母变成大写字母
  3. 运行在docker里的nginx添加虚拟目录并设置默认页面
  4. java基础~重写与重载
  5. 利用爬虫快速获取企业招聘信息
  6. OPPO和华为哪个好?国产旗舰这么选才不亏
  7. 写一段python代码 制作生日贺卡
  8. java-eclipse项目出现错误的解决方案
  9. Paxos 诞生的曲折历史
  10. 湖北立捷科技:淘宝商品发布规则介绍