int 21h在汇编语言中作用
时间: 2024-02-13 22:01:35 浏览: 175
`int 21h` 是一个中断指令,用于调用DOS系统的服务例程,例如输入输出、文件操作、内存管理等。在汇编语言中,我们可以使用`int 21h`来调用DOS系统的功能,从而完成各种任务,比如读写文件、屏幕输出、键盘输入等。例如,下面的汇编代码使用`int 21h`来输出一个字符串:
```
section .data
msg db 'Hello, World!', 0
section .text
global _start
_start:
; 输出字符串
mov ah, 09h ; AH=9 表示打印字符串
mov dx, msg ; DX=要打印的字符串地址
int 21h ; 调用 DOS 服务例程
; 退出程序
mov ah, 4ch ; AH=4C 表示退出程序
int 21h ; 调用 DOS 服务例程
```
上述代码中,`mov ah, 09h`将`AH`寄存器设置为9,表示要输出字符串;`mov dx, msg`将`DX`寄存器设置为字符串`msg`的地址;`int 21h`调用DOS系统的服务例程,完成字符串输出。
相关问题
汇编语言中int 21h
在汇编语言中,int 21h是一条中断指令,用于调用DOS系统的功能。具体来说,它可以实现文件读写、屏幕输出、键盘输入等操作。
当程序执行到int 21h指令时,CPU会暂停当前程序的执行,转而执行DOS系统中对应的功能。执行完毕后,CPU会返回到原来的程序继续执行。
需要注意的是,int 21h指令的具体功能由AH寄存器中的值决定。不同的值对应不同的功能。
汇编语言int 21H
汇编语言中的int 21H是一个中断指令,用于调用DOS系统的功能。通过设置寄存器AH的值来选择不同的功能,然后使用int 21H指令触发相应的中断子程序。在你提供的代码中,使用了int 21H的2号功能,即将要输出的字符放入DL寄存器中,然后通过int 21H指令进行输出。你观察到每次使用完2号功能后,AL寄存器的值会变为DL寄存器的值。这是因为在2号功能中,AL寄存器并没有被使用到,而DL寄存器被用来存储要输出的字符。因此,AL寄存器的值会被DL寄存器的值覆盖。\[1\]
在你提供的第二段代码中,如果删除了中间的int 21H指令,那么输出的结果应该是40,因为在这段代码中,AL寄存器的值被设置为30h,然后通过mov指令将AL的值赋给DL寄存器,最后通过int 21H指令输出DL寄存器的值。因此,如果删除了中间的int 21H指令,DL寄存器的值仍然是30h,输出的结果就是40。\[2\]
总结来说,汇编语言中的int 21H指令用于调用DOS系统的功能,通过设置寄存器的值来选择不同的功能。在使用2号功能时,要将要输出的字符放入DL寄存器中,而AL寄存器的值不会被使用到。如果删除了中间的int 21H指令,输出的结果会受到影响。\[1\]\[2\]
#### 引用[.reference_title]
- *1* *2* [汇编语言int 21h的2号功能使用后al值被改变](https://blog.csdn.net/qq_52151761/article/details/127271748)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
- *3* [【汇编】 INT 21H 命令](https://blog.csdn.net/mid_Faker/article/details/112271486)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item]
[ .reference_list ]
阅读全文