📄 hello.asm
字号:
;***************************************************************
; Test CALL Instructions
;
; version 0.1
;***************************************************************
;MAX_MEMORY EQU 128 ; Available memory in KByte, see ADDR_WIDTH generic in MemBlock
LF EQU 0Ah
CR EQU 0Dh
; PIO, 0x398-0x39F
PIO EQU 0398h
; UART settings, COM1
COM1 EQU 03F8h
COM2 EQU 02F8h
COMPORT EQU COM1
DATAREG EQU 0
STATUS EQU 1
DIVIDER EQU 2
TX_EMPTY EQU 02
RX_AVAIL EQU 01
FRAME_ERR EQU 04
org 0400h ; result in .com start IP=0100
MOV AX,CS
MOV DS,AX
MOV ES,AX
;------------------------------------------------------------------------------------
; Transmit character in AL
; AX Changed
;------------------------------------------------------------------------------------
AGAIN: MOV DX,COMPORT+STATUS
WAITTX: IN AL,DX ; read status
AND AL,TX_EMPTY ; Transmit Register Empty?
JZ WAITTX ; no, wait
MOV DX,COMPORT+DATAREG ; point to data port
MOV AL,'H'
OUT DX,AL
JMP AGAIN
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -