【汇编】DOS系统功能调用(INT 21H)
前言
最近又听了听汇编的课程,发现代码里的MOV xxxxx INT 21H,老师都是一句话带过,而不讲讲其中的原因(也可能前面讲了我没有听QAQ)。
顺便夸一下老师,老师懒省事录的视频画质已经成功从AV画质晋级为高清画质,哈哈哈哈哈,棒棒棒!

正传
让我们言归正传,这些代码都是啥意思呢?
MOV AH,4CH
INT 21H
这,奇妙的搭配,神奇的组合,是什么意思呢?
实际上这些是由DOS提供的一组实现特殊功能的子程序供程序员在编写自己的程序时调用,以减轻编程的工作量。
简而言之,就是 已经编写好的可直接调用的微小子程序。
如上面那两行代码,实际上是这样的:
(1)系统功能号送到寄存器AH中;
(2)入口参数送到指定的寄存器中;
(3)用INT 21H指令执行功能调用;
(4)根据出口参数分析功能调用执行情况。
实现的功能为:返回DOS,相当于高级语言中的return
四种常用的系统功能调用:
| AH | 功能入口 | 参数出口 | 参数 |
|---|---|---|---|
| 4CH | 返回 | 无 | 无 |
| 1 | 键盘输入一个字符到AL中 | 无 | AL=字 |
| 2 | 输出DL中的字符到显示器 | DL(存放有字符) | 无 |
| 9 | 输出一个以"$"结尾的字符串到显示器 | DS:字符串所在的段地址 | 无 |
详细用法--->参考文章
DOS系统功能调用表(全)
这个嘛,肯定是上资料了,当然,我找到了,你直接看就好。

【汇编】DOS系统功能调用(INT 21H)的更多相关文章
- 汇编 DOS的中断调用 INT 21H
DOS系统功能调用 这个汇编指令是用于提供DOS系统功能调用. 它是由DOS提供的一组实现特殊功能的子程序供程序猿在编写自己的程序时调用,以减轻编程的工作量. 分两种,re=view"> ...
- DOS系统功能调用表(INT 21H)
AH 功能 调用参数 返回参数 00 程序终止(同INT 20H) CS=程序段前缀 01 键盘输入并回显 AL=输入字符 02 显示输出 DL=输出字符 03 异步通迅输入 AL=输入数据 04 异 ...
- int 21h 汇编
INT 21H 指令说明及使用方法 转自http://www.cnblogs.com/ynwlgh/archive/2011/12/12/2285017.html 很多初学汇编语言的同学可能会对INT ...
- INT 21H 指令说明及使用方法
很多初学汇编语言的同学可能会对INT 21H这条指令感到困惑,不知道是什么意思,下面就以一段简单的程序为大家讲解: 例如:需要键盘输入,并且回显. AH的值需要查表取得,表在下面 指令: M ...
- INT 21H 指令说明及使用方法 (转载)
转载这篇博客 https://www.cnblogs.com/ynwlgh/archive/2011/12/12/2285017.html 侵删 送张ascii码表 很多初学汇编语言的同学可能会对 ...
- 2017.10.18 微机原理与接口----汇编语言语法和DOS功能调用
4.1 汇编语言中的基本数据 ·标识符 ·常数 ·变量具有三个属性: (1)段地址(SEG):变量所在段的段地址 (2)偏移地址(OFFSET):变量所在段内的偏移地址 (3)类型(TYPE):每个变 ...
- 汇编学习笔记(11)int指令和端口
格式 int指令也是一种内中断指令,int指令的格式为int n,n是中断类型码.也就是说,使用int指令可以调用任意的中断例程,例如我们可以显示的调用0号中断例程,还记得在汇编学习笔记(10)中我们 ...
- 汇编语言常用的DOS功能调用
今天掌握了汇编语言常用的DOS功能调用,现在列出来供参考. 1.单字符输入(1号调用) 格式:MOV AH,1 INT 21H 功能:达到输入状态,从键盘上输入字符的ASCII码送入AX中,并送显示器 ...
- x01.os.5: DOS 功能调用
DOS 功能调用(INT 21)-------------------------------AH = 0-2E 适用 DOS 1.0 以上版本AH = 2F-57 适用 DOS 2.0 以上版本AH ...
- 系统功能调用Windows操作系统原理实验
一.实验目的 1.熟悉操作系统的系统功能调用. 2.掌握用C语言实现系统功能调用的方法和步骤. 3.掌握利用10H号功能调用(BIOS的显示I/O功能调用)来实现对屏幕的操作与控制. 二.实验内容 1 ...
随机推荐
- CURL 常用命令
参考博客:https://blog.csdn.net/wangpengfei163/article/details/80900391
- ISCC 2022 RE
ISCC 2022 RE 练武题 Amy's Code v9=[0]*20 v9[0] = 149 v9[1] = 169 v9[2] = 137 v9[3] = 134 v9[4] = 212 v9 ...
- 谈谈Selenium中的日志
谈谈Selenium中的日志 来源于一位同学,"老师为啥firefox执行后会有日志文件,chrome没有呢?" 比对 你打开chrome浏览器 from selenium imp ...
- Bitcask — 日志结构的快速 KV 存储引擎
Bitcask 介绍 Bitcask 是一种高性能的键值存储引擎,基于日志结构和哈希索引来提供高速的读写操作和数据持久性,适用于处理大量写入请求和快速查找键值对的应用场景. 核心概念 Bitcask ...
- Hash 表
更多内容,前往 IT-BLOG 哈希表(Hash table,也叫散列表),是根据关键码值(Key value)而直接进行访问的数据结构.也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快 ...
- git命令的学习和基本使用
初始化 git init (your_project) 配置 --local 只对当前仓库有效 --global 对当前用户所有仓库有效 --system 对系统登录的所有用户有效 git confi ...
- PyQt5学习 (2)--QWidget(上)
描述: 1.所有可视控件的基类 2.是一个最简单的空白控件 3.控件时用户界面的最小元素:接收各种事件.绘制在桌面上,展示给用户看 4.每个控件都是矩形的,它们按Z轴顺序排序 5. ...
- [SpringBoot/JavaEE]SpringBoot启动与停用的4种方式
SpringBoot版本: 2.1.6.RELEASE 1 启动 方式1 – IntelliJ IDEA - Windows 右键启动类SpringBootSampleApplication.java ...
- [MySQL]SQL条件语句
IF语句:IF(expr1, trueResultExpr, falseResultExpr) 若expr1 == TRUE, 则:返回值为 trueResultExpr: 若expr1 == FAL ...
- 服务器实现端口转发的N种方式
简介 在一些实际的场景里,我们需要通过利用一些端口转发工具,比如系统自带的命令行工具或第三方小软件,来绕过网络访问限制触及目标系统.下文为大家总结了linux系统和windows系统端口转发常用的一些 ...