鱼C论坛

 找回密码
 立即注册
查看: 4622|回复: 5

汇编课本14章 检测点14.1问题

[复制链接]
发表于 2011-7-18 22:36:05 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 bevin 于 2011-7-19 13:34 编辑

编程,向cmos RAM的2号单元写入0.

答案是这样写的:


  1. assume cs:code
  2. code segment
  3. start:
  4. mov al,2
  5. out 70h,al
  6. mov al,0
  7. out 71h,al
  8. in al,71h ;执行完此条指令后al中的内容为0

  9. mov ax,4c00h
  10. int 21h
  11. code ends
  12. end start
复制代码

不理解中间每一句的含义,望高手指点。。。。。
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2011-7-19 10:29:00 | 显示全部楼层
很简单,mov al,2 out 70h,al这两句是确定读写单元号。mov al,0 out 71h,al这两句是向指定单元写入数据。in al,71h这一句是把指定单元的数据读入al中。



小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2011-7-19 11:03:36 | 显示全部楼层

第二句out 70h,al 是不是应该是71h?这个才是数据总线。。。能不能解释详细一点 = - ,我有点乱。。。
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2011-7-19 12:29:41 | 显示全部楼层
它就这样规定的,70h端口是写入要读写的单元号的,71h端口就是读写单元内容的。没有为什么?
小甲鱼最新课程 -> https://ilovefishc.com
 楼主| 发表于 2011-7-19 13:34:16 | 显示全部楼层
懂了,谢谢 。。。。。
小甲鱼最新课程 -> https://ilovefishc.com
发表于 2012-8-4 23:28:21 | 显示全部楼层
代码如下
  1. assume cs:code
  2. code segment
  3.         start:
  4.                 mov al,8
  5.                 out 70h,al
  6.                 in al,71h
  7.                 mov ah,al
  8.                 mov cl,4
  9.                 shr ah,cl
  10.                 and al,00001111b
  11.                
  12.                 add ah,30h
  13.                 add al,30h
  14.                
  15.                 mov bx,0b800h
  16.                 mov es,bx
  17.                 mov byte ptr es:[160*12+80],ah
  18.                 mov byte ptr es:1[160*12+80],01110000b
  19.                 mov byte ptr es:2[160*12+80],al
  20.                 mov byte ptr es:3[160*12+80],01110000b
  21.                
  22.                 mov ax,4c00h
  23.                 int 21h
  24. code ends
  25. end start
复制代码
小甲鱼最新课程 -> https://ilovefishc.com
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-7-1 13:20

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表