• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号
您的位置:首页 > 程序设计 >汇编语言 > 汇编语言技术指标

汇编语言技术指标

作者:匿名 字体:[增加 减小] 来源:互联网 时间:2017-06-28

匿名通过本文主要向大家介绍了汇编语言与接口技术,汇编语言及接口技术,国外汇编语言技术网站,建设项目用地指标汇编,土地使用指标汇编等相关知识,希望对您有所帮助,也希望大家支持linkedu.com www.linkedu.com
</div>

一、程序状态寄存器
PSW(Program Status Word)为程序状态寄存器,这是一个16位寄存器,由条件码标志(flag)和控制标志构成:
bit0:CF
bit2:PF
bit4:AF
bit6:ZF
bit7:SF
bit8:TF
bit9:IF
bit10:DF
bit11:OF
其中,条件码标志用来记录程序中运行结果状态信息.由于这些状态信息往往作为后继条件转移指令的转移控制条件,所以称为条件码.这包括以下6位:
OF(Overflow Flag)溢出标志,在运行过程中,如操作数超出了机器能表示的范围则称为溢出,此时OF位置1,否则置0.
SF(Sign Flag)符号标志,记录运算结果的符号,结果为负时置1,否则置0.
ZF(Zero Flag)零标志,运算结果为0时ZF位置1,否则置0.
CF(Carry Flag)进位标志,记录运算时从最高有效位产生的进位值.例如,执行加法指令时,最高有效位有进位时置1,否则置0.
AF(Auxiliary carry Flag)辅助进位标志,记录运算时第3位(半个字节)产生的进位值.例如,执行加法指令时第3位有进位时置1,否则置0.
PF(Parity Flag)奇偶标志,用来为机器中传送信息时可能产生的代码出错情况提供检验条件.当结果操作数中1的个数为偶数时置1,否则置0
控制标志位有三个:
DF(Direction Flag)方向标志,在串处理指令中控制处理信息的方向用。当DF位为1时,每次操作后使变址寄存器SI和DI减量,这样就使串处理从高地址向低地址方向处理。当DF为0时,则使SI和DI增量,使串处理从低地址向高地址处理。
IF(Interrupt Flag)中断标志,当IF为1时,允许中断,否则关闭中断
TF(Trap Flaga)陷井标志,用于单步方式操作。当TF位为1时,每条指令执行完后产生陷阱,由系统控制计算机;当TF位为0时,CPU正常工作不产生陷阱。

二、中断屏蔽寄存器
中断屏蔽寄存器的I/O端口地址是21H,它的8位对应8个外设。
bit0:定时器(IR0)
bit1:键盘(IR1)
bit2:保留(IR2)
bit3:串行通讯口(2)(IR3)
bit4:串行通讯口(1)(IR4)
bit5:硬盘(IR5)
bit6:软盘(IR6)
bit7:打印机(IR7)
通过设置这个寄存器的某位为1或为1允许或禁止某种外设的中断.某位为0表示允许某种外设中断请求,某位为1表示某种外设的中断请求被屏蔽(禁止).
例如,只允许键盘中断,可设置如下中断屏幕字:
MOV AL,11111101B
OUT 21H,AL
如果系统中要新增设键盘中断,则可用下列指令实现:
IN AL,21H
AND AL,11111101B
OUT 21H,AL
三、中断命令寄存器
bit0:L0
bit1:L1
bit2:L2
bit3,bit4:0
bit5:EOI
bit6:SL
bit7:R
中断命令寄存器的I/O端口地址为20H,它的各个控制位可动态地控制中断处理过程,其中L2-L0三位指定IR0-IR7中具有最低优先级的中断请求.位6(Set Level)和位7(Rotate)控制IR0-IR7的中断优先级的顺序.位5(EOI)是中断结束位.当EOI为1时,当前正在处理的中断请求就被清除,所以在中断处理完成后,必须中断结束位置于1,否则以后将屏蔽掉对同级中断或低级中断的处理.当然在必要的时候,在中断处理程序中也可以用EOI命令清除当前的中断请求,使得在中断处理的过程中又能响应同级或低级的中断.
结束外中断用下面的指令:
MOV AL,20H
OUT 20H,AL
在发出一个EOI命令时,位7和位6有四种组合,其含义如下:
R SL
0 0 正常优先级方式
0 1 清除由L2-L1指定的中断请求
1 0 各中断优先级依次左循环一个位置
1 1 各中断优先级依次循环到由L2-L0指定的中断请求达到最低优先级位置上.
四、键盘状态字节
bit0=1:按下右移键Right Shift
bit1=1:按下左移键Left Shift
bit2=1:按下控制键Ctrl
bit3=1:按下交替键Alt
bit4=1:Scroll Lock状态已变换
bit5=1:Num Lock状态已变换
bit6=1:Caps Lock状态已变换
bit7=1:Insert状态已变换
五、键盘缓冲区结构
0040:001A BUFF_HEAD DW ? ;键盘缓冲区的首地址
0040:001C BUFF_TAIL DW ? ;键盘缓冲区的末地址
0040:001E KB_BUFFER DW 16 DUP(?) ;16个输入量的空间
0040:003E KB_BUFFER_END LABEL WORD
这个缓冲区是一个先进先出的循环队列,BUFF_HEAD和BUFF_TAIL是缓冲区的两个地址指针.当HEAD指和TAIL指针相等时,说明缓冲区为空.
六、彩色属性字节
bit0-bit3:前景(bit0:B,bit1:G,bit2:R,bit3:I)
bit4-bit6:背景(bit4:B,bit5:G,bit6:R)
bit7:闪烁(BL)
RGB分别表示红,绿,兰,BL表示闪烁,I为亮度,闪烁和亮度只应用于前景.
七、DOS预定义文件代号
0=标准输入设备
1=标准输出设备
2=标准错误输出设备
3=标准辅助设备
4=标准打印设备
八、文件代号式文件操作错误返回代码
01 非法功能号
02 文件未找到
03 路径未找到
04 同时打开的文件太多
05 拒绝存取
06 非法文件代号
07 内存控制块被破坏
08 内存不够
09 非法存储块地址
10 非法环境
11 非法格式
12 非法存取代码
13 非法数据
14 (未用)
15 非法指定设备
16 试图删除当前的目录
17 设备不一致
18 已没有文件
九、文件属性字节
bit0:只读
bit1:隐文件
bit2:系统文件
bit3:卷文件
bit4:子目录
bit5:归档位(该位为1表示:已写入并关闭了的文件(硬盘用))
十、存取代码
0--为读而打开文件
1--为写而打开文件
2--为读和写而打开文件
十一、磁道地址区
用BIOS功能对磁道进行格式化操作要求ES:BX寄存器指定一组磁道地址区,对磁道上的每一个扇区,必须有一个格式为T/H/S/B的四个字节的数据项,这里
T=磁道号
H=磁头号
S=扇区号
B=每扇区的字节数(00=128,01=256,02=512,03=1024)
十二、磁盘状态字节
用BIOS磁盘操作(AH=02,03,04,05)如果操作成功,则CF和AH置为0;如果操作失败,CF置为1,AH中返回表示出错原因的状态代码。
01 给磁盘I/O传送了非法命令
02 磁盘上没有发现地址标记
03 试图往写保护盘上写
04 没有找到指定的扇区
08 DMA超载运行
09 DMA超过64K的限制
10 读盘数据错(CRC)
20 软盘控制器出错
40 随机移动失败
80 回答失败

</div> </div> </div> </div>
分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • 汇编语言与C语言的接口技术
  • 汇编语言技术指标

相关文章

  • 2017-06-28汇编数据转换操作小技巧
  • 2017-06-28MASM-两个16位二进制数减法模拟
  • 2017-06-28汇编源码系列之fxn
  • 2017-06-28通用控件详解
  • 2017-06-28PE文件结构剖析
  • 2017-06-28如何在弹出菜单的同时再次弹出菜单
  • 2017-06-28汇编IDE的选择与配置
  • 2017-06-28WINDOWS钩子函数详解
  • 2017-06-28什么是动态链接库
  • 2017-06-28汇编源码系列之gameport

文章分类

  • JavaScript
  • ASP.NET
  • PHP
  • 正则表达式
  • AJAX
  • JSP
  • ASP
  • Flex
  • XML
  • 编程技巧
  • Android
  • swift
  • C#教程
  • vb
  • vb.net
  • C语言
  • Java
  • Delphi
  • 易语言
  • vc/mfc
  • 嵌入式开发
  • 游戏开发
  • ios
  • 编程问答
  • 汇编语言
  • 微信小程序
  • 数据结构
  • OpenGL
  • 架构设计
  • qt
  • 微信公众号

最近更新的内容

    • 汇编语言的艺术-准备工作(四)
    • 如何在弹出菜单的同时再次弹出菜单
    • 汇编语言及意义
    • Win32汇编的环境和基础
    • 汇编教程之基本概念(win32)
    • 汇编语言程序设计(五)
    • 汇编源码系列之cldoc12
    • 结构化程序方法在汇编语言中的应用
    • 汇编教程:VxD程序设计入门
    • 汇编语言的符号、标号和变量符号

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有