简单的微机原理程序运行结果

简单的微机原理程序运行结果,第1张

MOV DX,0F100H DX=0F100H

MOV DH,[DX] DH=(0F100H)='A'=41H DX=4100H 取内存0f100h处存放的字符'A'存入DH,'A'的ASCII码为41H,DH为DX寄存器高位,所以DX发生变化

MOV AH,[DX] AH=(04100H)='B'=42H 原理同上

所以正确的是AH中存放的是42H,不是41H,另外DX寄存器不能作为间接寻址寄存器,可以使用BX寄存器代替。

微机原理课程设计

流水灯控制系统 姓名:XX 学院:物理电气信息学院 班级:2010电子 姓名:…

流水灯控制系统

一、设计内容:

本课程设计选用8086对8255A的A口控制来实现模拟流水灯功能的实现。编写相关程序,通过proteus仿真软件来实现我名字“安亮”两个字的闪烁,“安”字接8255的A口的P0,“亮”字接A口的P1。先让“安”字和“亮”字同时点亮,再让两个字同时暗,接着让“安”字点亮,再让“亮”字点亮,然后让“安”字和“亮”字同时亮暗闪烁八次,再跳到开始,以此循环。

二、设计目的: 1、了解流水灯的基本工作原理 2、熟悉8255A并行接口的各种工作方式和应用 3、利用8255A接口,LED发光二极管,设计一个流水灯模拟系统,让我的名字“安亮”两个字按一定规律点亮。 三、实验原理 在8086系统中,采用16位数据总线,进行数据传输时,CPU总是将低8位数据线上的数据送往偶地址端口,而过高8位数据线上的数据送往奇地址端口反过来,从偶地址端口取得的数据总是通过低8位数据线传送到CPU,从奇地址端口取得的数据总是通过高8位数据线送到CPU。在8086系统中,将8255A的A1端和地址总线的A2相连,而将8255A的A0端和地址总线的A1相连,并且,CPU在对9255A的端口进行访问时,将地址总线的A0位总是设置为0。本课程设计通过对8255A的A口控制来实现模拟流水灯功能的实现。“安”接A口的P0,“亮”接A口的P1,实现两个字按一定规律的一个闪烁。

8255的内部结构

255A内部结构由以下四部分组成: 数据端口A、B、C;A组控制和B组控制;读/写控制逻辑电路;数据总线缓冲器。 端口A:包括一个8位的数据输出锁存/缓冲器和一个8位的数据输入锁存器,可作为数据输入或输出端口,并工作于三种方式中的任何一种。 端口B:包括一个8位的数据输出锁存/缓冲器和一个8位的数据输

        CODE  SEGMENT

              ASSUME    CS:CODE

      START:

              MOV       CX,3        ; 设外循环 3次

         @0:

              PUSH      CX

              MOV       CX,10       ; 设内循环 10次

         @1:

              MOV       AH,2

              MOV       DX,CX

              DEC       DX          ; 将内循环变量 减一 后输出

              OR        DL,30H

              INT       21H

              MOV       AX,18       ; 延时 18 个单位 ,约等于1秒

              CALL      DELAY_PROC

              LOOP      @1

              CALL      LFCR        ; 换行回车

              POP       CX

              LOOP      @0

              MOV       AH,4CH

              INT       21H

 

       LFCR:  PUSH      AX

              PUSH      DX

              MOV       AH,2

              MOV       DL,13

              INT       21H

              MOV       DL,10

              INT       21H

              POP       DX

              POP       AX

              RET

 

;===============================================================              

  DELAY_PROC  PROC      NEAR        ;延迟子程式,  延迟   ax/18秒

              PUSH      ES

              PUSH      DX

              MOV       DX,40H

              MOV       ES,DX

              MOV       DX,ES:[006CH]           ;取系统1/18秒计数

              ADD       DX,AX       ; 延时 x/18

    DELAY10:

              CMP       ES:[006CH],DX           ;时限到了

              JBE       DELAY10     ;没

              POP       DX

              POP       ES

              RET

  DELAY_PROC  ENDP

;============================================================

        CODE  ENDS

              END       START

以上就是关于简单的微机原理程序运行结果全部的内容,包括:简单的微机原理程序运行结果、微机原理流水灯、微机原理课程设计:通过使用软件延时,编写一个程序,在屏幕上依次显示9、8、7。。。1、0十个数字。。。等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/9279587.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-26
下一篇2023-04-26

发表评论

登录后才能评论

评论列表(0条)

    保存