📄 jieshou.asm
字号:
data segment
filer db 'F:\lfb.txt ',0
handle dw 0
buffer db 2000 dup(0)
len dw 1000
data ends
stack segment stack'stack'
db 100 dup(0)
stack ends
code segment
assume cs:code,ds:data,es:data,ss:stack
main proc far
mov ax,data
mov ds,ax
mov es,ax
mov dx,3fbh ;允许波特率访问并锁存被除数
mov al,80h ;初始化
out dx,al
mov dx,3f8h ;波特率因子寄存器3f8h
mov al,80h
out dx,al
inc dx
mov al,01h
out dx,al ;设置波特率300
mov dx,3fbh ;线路控制寄存器初始化
mov al,00011010b
out dx,al
inc dx ;初始化moden
mov al,00001011b
out dx,al
lea si,buffer
rece: mov dx,3fdh
in al,dx
test al,01h
jz rece ;检测到接收端数据就绪则开始接受
mov dx,3f8h
in al,dx
cmp al,1ah
jz over ;若结束则跳over
mov [si],al ;一位一位接收并保存
push ax
mov bx,0
mov ah,14
int 10h
pop ax
inc len
inc si
jmp rece
over: mov ah,3dh ;打开文件
mov al,1 ;写文件
lea dx,filer
int 21h
mov handle,ax
mov ah,40h ;写文件
mov bx,handle
mov cx,len
lea dx,buffer
int 21h
mov ah,3eh ;关闭文件
mov bx,handle
int 21h
mov ah,4ch
int 21h
main endp
code ends
end main
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -