16_print.asm
来自「可作为接口实验的参考教材」· 汇编 代码 · 共 72 行
ASM
72 行
;//*******************************************************************
;文件名:并口打印机控制程序 FOR 8088
;功能:并口打印机控制打印字符、汉字
;接线:对应连接打印机接口模块的BUSY、STROBE到8255模块的PC0、PC5。
; 连接8255模块的CS_8255到CPU模块的200H。
;//********************************************************************
PA8255 EQU 200H ;8255PA口地址
PB8255 EQU 201H ;8255PB口地址
PC8255 EQU 202H ;8255PC口地址
PCTL8255 EQU 203H ;8255控制口地址
CODE SEGMENT
ASSUME CS:CODE,DS:CODE
START:
PUSH CS
POP DS
MOV DX,PCTL8255
MOV AL,81H ;设置PA、PC5出,PC0入
OUT DX,AL
BEGIN:
MOV BX,OFFSET DATA1 ;打印数据区指针
MOV CX,59 ;发送16个ASCII码
PRINT: MOV DX,PA8255
MOV AL,CS:[BX] ;取ASCII码
OUT DX,AL ;发送ASCII码
MOV DX,PCTL8255
MOV AL,0AH ;PC5: STROBE置“0”,发送选通脉冲
OUT DX,AL
NOP
MOV AL,0BH ;PC5: STROBE置“1”,发送选通脉冲
OUT DX,AL
WAIT1:
MOV DX,PC8255
IN AL,DX
SHR AL,1
JC WAIT1 ;忙,则等待
INC BX ;不忙,指针增加1
LOOP PRINT
OK: JMP OK
DATA1: ;DB 59 ;1字符个数
DB 0AH ;走纸一行 ;1
DB 1BH,36H,'H','E','L','L','O','!';8
DB 0DH ;回车 ;1
DB 0AH ;走纸一行 ;1
DB 1BH,38H,1 ;汉字打印命令 ;3
DB '浙','江','天','煌','科','技' ;12
DB '实','业','有','限','公','司' ;12
DB 0DH ;回车 ;1
DB 1BH,36H,' ',' ',' ' ;5
DB 1BH,38H,0,'天','堂','杭','州' ;11
DB 0AH ;走纸一行 ;1
DB 0AH ;走纸一行 ;1
DB 0AH ;走纸一行 ;1
DB 0AH ;走纸一行 ;1
CODE ENDS
END START
⌨️ 快捷键说明
复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?