《汇编语言(第四版)》 . 王爽著 . 清华大学出版社 . 2019
¶实验 14 访问 CMOS RAM
¶端口的读写
在访问端口时,CPU 通过端口地址来定位端口,在 PC 系统中,CPU 最多可以定位 64 KB 个不同的端口。则端口地址的范围为 0 ~ 65535
1 | in ;从端口读取数据 |
在 in 和 out 指令中,只能使用 ax 或 al 来存放从端口中读入的数据或要发送到端口的数据。访问 8 位端口时用 al,访问 16 位端口时用 ax
¶检测点 14.1
1 | mov al,2 |
1 | mov al,2 |
¶检测点 14.2
shl 和 shr 是逻辑移位指令,其中
shl 是逻辑左移指令,它的功能为:
1)将一个寄存器或内存单元中的数据向左移位
2)将最后移出的一位写入 CF 中
3)最低位用 0 补充
shl 是逻辑右移指令,它的功能为:
1)将一个寄存器或内存单元中的数据向右移位
2)将最后移出的一位写入 CF 中
3)最高位用 0 补充
若移动位数大于 1,则必须将移动位数放在 cl 中
1 | ;计算 (ax)*10 |
¶实验任务
BCD 码是以 4 位二进制数表示十进制数码的编码方法
十进制数码与其对应的 BCD 码:
0:0000, 1:0001, 2:0010, 3:0011, 4:0100,
5:0101, 6:0110, 7:0111, 8:1000, 9:1001
一个字节可表示两个 BCD 码,在 CMOS RAM 存储时间信息的单元中,存储了用两个 BCD 码表示的两位十进制数,高 4 位的 BCD 码表示十位,低 4 位的 BCD 码表示个位
1 | cs:code,ds:data |
¶汇编语言实验合集
实验 1 查看 CPU 和内存,用机器指令和汇编指令编程
实验 2 用机器指令和汇编指令编程
实验 3 编程、编译、连接、跟踪
实验 4 [bx] 和 loop 的使用
实验 5 编写、调试具有多个段的程序
实验 6 实践课程中的程序
实验 7 寻址方式在结构化数据访问中的应用
实验 8 分析一个奇怪的程序
实验 9 根据材料编程
实验 10 编写子程序
课程设计 1
实验 11 编写子程序
实验 12 编写 0 号中断的处理程序
实验 13 编写、应用中断例程
实验 14 访问 CMOS RAM
实验 15 安装新的 int9 中断例程
实验 16 编写包含多个功能子程序的中断例程
实验 17 编写包含多个功能子程序的中断例程
课程设计 2