关于debug的使用、安装 https://blog.csdn.net/PoorGuy_tn/article/details/80362992

8086cpu芯片引脚。地址引脚(20个),数据引脚(16个)
掌握以下dos命令和debug命令。
DOS命令:CD,DIR,DEL,RENAME,COPY,EDIT,MD,RD(选做)
DEBUG命令: A,D,E,P,R,T,U,G

显示属性字
一个字符在显示缓冲区占用2个字节空间,第一个字节为字符的ASCII码,第二个字节为字符的色彩属性。含义如下:

一个字节有8位 其中可组成为
汇编语言实验总结


对于8086 cpu 来说
1word=16bit
1byte=8bit

寄存器是多少位的一个字就等于多少bit


寄存器

1、段地址寄存器
CS(Code Segment)代码段寄存器
DS(Data Segment)数据段寄存器
ES(Extra Segment)附加段寄存器
SS(Stack Segment)堆栈段寄存器

2、地址寄存器
包括指针Ip(Instruction Pointer)

3、变址寄存器
SP(Stack Pointer)
BP(Base Pointer)
SI(Source Index)
DI(Destination Index)

4、数据寄存器
AH&AL=AX(accumulator)累加寄存器,常用于运算;在乘除等指令中指定用来存放操作数,另外,所有的I/O指令都使用这一寄存器与外界设备传送数据。

BH&BL=BX(base):基址寄存器,常用于地址索引

CH&CL=CX(count):计数寄存器,常用于计数;常用于保存计算值,如在移位指令,循环(loop)和串处理指令中用作隐含的计数器.

DH&DL=DX(data):数据寄存器,常用于数据传递。

5、FLAGS标志寄存器 9个
OF overflow flag 溢出标志 操作数超出机器能表示的范围表示溢出,溢出时为1.

SF sign Flag 符号标志 记录运算结果的符号,结果负时为1.

ZF zero flag 零标志 运算结果等于0时为1,否则为0.

CF carry flag 进位标志 最高有效位产生进位时为1,否则为0.

AF auxiliary carry flag 辅助进位标志 运算时,第3位向第4位产生进位时为1,否则为0.

PF parity flag 奇偶标志 运算结果操作数位为1的个数为偶数个时为1,否则为0.

IF interrupt flag 中断标志 IF=1时,允许CPU响应可屏蔽中断,否则关闭中断.

TF trap flag 陷阱标志 用于调试单步操作.

DF direcion flag 方向标志 用于串处理.DF=1时,每次操作后使SI和DI减小.DF=0时则增大.


内存

00000-9ffff 主存储器
A0000-bffff 显存
C0000-fffff 各类ROM (只读存储器
汇编语言实验总结
外设端口
各种接口芯片中的端口。端口地址64K个。

显存
显存 80*25彩色字符模式显示缓冲区 B8000H 显示缓冲区

偏移000~09f对应显示器上的第一行(80个字符占160个字节)
000~159 刚好一共160个 159B=09f

偏移0AF~13f对应显示器上的第二行
汇编语言实验总结
想在debug框中用-e输出各种字符(及其颜色属性
两种方法:

-e b800:0000 4a 4a 4b 4a //4a为ascii码 4a为颜色属性 后两个同理
-e b800:0000 'J' 4a 'K' 4a

要显示其字符及属性时
-e b800:0000
=>
B800:0000 3A.4a 07.4a 30....

最大段地址FFFF 最小段地址0000

易错
mov [0010],ax:将ax里的值放入16号单元
在最右下角可以看到DS的第16号单元即【0010】已经等于F8H 而F8H正是-8的补码11111000B的十六进制数

相关文章:

  • 2022-01-04
  • 2021-07-19
  • 2022-01-23
  • 2022-12-23
  • 2022-12-23
猜你喜欢
  • 2021-12-04
  • 2021-11-06
  • 2021-10-30
  • 2021-09-24
  • 2021-05-28
  • 2021-04-11
  • 2021-06-18
相关资源
相似解决方案