微机原理
1M=1000k 1000/5=200
200
NMI
INTR
主 从 从 8-2+8+8
ZF=0
100H
MOVBX,[DI] 0AA55
基址
寄存器
ENDS
SP
指示型和指令行的区别
指令型的语句是可执行的最终产生机器码会上机运行需要CPU去运行
指示型语句是指示如何汇编
数据定义 DB DW
符号定义 EQU =
取值 TYPE OFFSET
查询状态位 如果没准备好 则继续查询 如果 准备好了 对应的可以进行I/O
设状态为为 SPORT 为 D0位
数据口为 DPORT
WAIT0:
MOV DX,SPORT
IN AL,DX
SHR AL,1 ;TEST AL,1
JNC WAIT0 JZ WAIT0
MOV DX,DPORT
IN AL,DX
IF=1 一条指令结束 未在执行更高级中断
中断处理的过程: 发出INTA信号 通过INTA 取回中断类型码 通过类型码 压FR 关IF TF 压当前的CS IP 通过类型码X4 找到对应单元取出入口偏移地址送入IP 取出入口的段地址送入CS 然后再运行中断服务程序 在中断服务程序中对应的来保护现场执行结束以后 恢复现场实现中断返回
127X5-3 >127 Y 需要等于 DW
MOV AL,X PPP 5X-3
CMP AL,0 ZZZ 0
JG PPP NNN 2X
JZ ZZZ
JL NNN
DATA SEGMENT
Y DB 100
Y DW Y
DATA ENDS
ASSUME CS:CODE,DS:DATA
CODE SEGMENT
START:
MOV AX,DATA
MOV DS,AX
MOV AL,X;X取入AL
CMP AL,0比较
JG PPP ;大于0跳PPP
JZ ZZZ;等于0跳ZZZ
JL NNN;小于0跳 NNN
PPP:
MOV BL,5
IMUL BL;有符号实现5X
SUB AX,3.5X-3
JMP EXIT0
ZZZ:
MOV AX,0
JMP EXIT0
NNN:
MOV BL,2
IMLU BL
EXIT0:
MOV Y,AX;送Y
MOV AH,4CH
INT 21H
CODE ENDS
END START
3FFFH-0000H+1=4000H=4x16^3= 2^ ROM 空间为16k RAM 空间为32k
ROM=16kb/8kb
DESG SEGMENT
DATA DB 1,2,3,4…
COUNT DW 100
DESG ENDS
ASSUME CS:CODE,DS:DESG
CODE SEGMENT
START:
MOV AX,DSEG
MOV DS,AX
MOV AL,1 000 0 0 1 B;81H
MOV DX,0FBC3H;写控制字
OUT DX,AL
MOV AL,0000 1101B;PC6=1 关闭选通
OUT DX,AL;按位操作写入控制口
MOV CX,COUNT;次数送CX
LEA SI,DATA;SI指向DATA
MOV DX,0FBC2H
IN AL,DX;读C口
TEST AL,00000010B
HLT
CODE ENDS
END START