⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 diliver.lst

📁 包含串行通行的收发程序、电子钟、AD、DA转换、LED按键显示等的源代码
💻 LST
字号:
Turbo Assembler	 Version 5.0	    05-20-08 15:07:53	    Page 1
C:\DOCUME~1\ADMINI~1\桌面\diliver.asm



      1	0000			     data segment
      2	0000  64 3A 5C 64 69 6C	69+  file_send db 'd:\diliver.txt',0
      3	      76 65 72 2E 74 78	74+
      4	      00
      5	000F  0000		     handle dw 0
      6	0011  07D0*(00)		     buffer db 2000 dup(0)
      7	07E1  03E8		     size_send dw 1000
      8	07E3			     data ends
      9
     10	0000			     stack segment stack  'stack'
*Warning* C:\DOCUME~1\ADMINI~1\桌面\diliver.asm(8) Reserved word used as symbol: STACK
     11	0000  64*(00)		     db	100 dup(0)
     12	0064			     stack ends
     13
     14	0000			     code segment
     15					 assume	cs:code,ds:data,es:data,ss:stack
     16
     17	0000			     main proc far
     18	0000  B8 0000s			 mov ax,data
     19	0003  8E D8			 mov ds,ax
     20	0005  8E C0			 mov es,ax
     21	0007  BA 0000r			 lea dx,file_send    ;打开文件,只读方式
     22	000A  B0 00			 mov al,0
     23	000C  B4 3D			 mov ah,3dh
     24	000E  CD 21			 int 21h
     25
     26	0010  A3 000Fr			 mov handle,ax	      ;保存文件句柄
     27	0013  8B D8			 mov bx,ax		 ;文件句柄
     28
     29	0015  BA 0011r			 lea dx,buffer	      ;将要发送的文件内容读入发送缓冲区
     30	0018  B4 3F			 mov ah,3fh	     ;读文件
     31	001A  8B 0E 07E1r		 mov cx,size_send
     32	001E  CD 21			 int 21h
     33	0020  A3 07E1r			 mov size_send,ax    ;字节数
     34
     35	0023  B4 3E			 mov ah,3eh
     36	0025  8B 1E 000Fr		 mov bx,handle	      ;关闭文件
     37	0029  CD 21			 int 21h
     38
     39	002B  BA 03FB			 mov dx,3fbh	    ;8250初始化
     40	002E  B0 80			 mov al,80h	   ;允许波特率访问,将除数锁存
     41	0030  EE			 out dx,al
     42
     43	0031  BA 03F8			 mov dx,3f8h	    ;写波特率因子LSB
     44	0034  B0 80			 mov al,80h
     45	0036  EE			 out dx,al
     46	0037  42			 inc dx		   ;dx=3f9写波特率因子MSB
     47	0038  B0 01			 mov al,01h
     48	003A  EE			 out dx,al
     49
     50	003B  BA 03FB			 mov dx,3fbh	    ;写线路控制寄存器,允许访问接收数据、发送保持和中段允许寄存器
     51	003E  B0 1A			 mov al,00011010b    ;偶校验,一位停止位,7位数据位
     52	0040  EE			 out dx,al
     53
     54	0041  42			 inc dx		   ;写MODEN控制寄存器,选OUT1
     55	0042  B0 0B			 mov al,00001011b    ;数据端就绪,请求发送,数据终端就绪
     56	0044  EE			 out dx,al
Turbo Assembler	 Version 5.0	    05-20-08 15:07:53	    Page 2
C:\DOCUME~1\ADMINI~1\桌面\diliver.asm



     57
     58	0045  BE 0011r			 lea si,buffer
     59	0048  8B 0E 07E1r		 mov cx,size_send
     60	004C  8A 04		     again:	mov al,[si]
     61	004E  46			 inc si
     62	004F  BA 03F8			 mov dx,3f8h
     63	0052  EE			 out dx,al	     ;发送保持寄存器
     64
     65	0053  BA 03FD		     urat:    mov dx,3fdh	 ;查询线路状态寄存器,看发送保持寄存器中
     66						     ;的数据是否已送至移位寄存器中
     67	0056  EC			 in al,dx
     68	0057  A8 20			 test al,00100000b
     69	0059  74 F8			 jz urat	    ;不断检测,当发送寄存器空时,发送下一位
     70	005B  E2 EF			 loop again
     71
     72	005D  B0 1A			 mov al,1ah  ;0001 1010
     73	005F  BA 03F8			 mov dx,3f8h
     74	0062  EE			 out dx,al
     75
     76
     77	0063  B4 4C			 mov ah,4ch
     78	0065  CD 21			 int 21h
     79
     80	0067				 main endp
     81	0067			     code    ends
     82					 end main
Turbo Assembler	 Version 5.0	    05-20-08 15:07:53	    Page 3
Symbol Table




Symbol Name			  Type	 Value

??DATE				  Text	 "05-20-08"
??FILENAME			  Text	 "diliver "
??TIME				  Text	 "15:07:53"
??VERSION			  Number 0500
@CPU				  Text	 0101H
@CURSEG				  Text	 CODE
@FILENAME			  Text	 DILIVER
@WORDSIZE			  Text	 2
AGAIN				  Near16 CODE:004C
BUFFER				  Byte	 DATA:0011
FILE_SEND			  Byte	 DATA:0000
HANDLE				  Word	 DATA:000F
MAIN				  Far16	 CODE:0000
SIZE_SEND			  Word	 DATA:07E1
URAT				  Near16 CODE:0053

Groups & Segments		  Bit Size Align  Combine Class

CODE				  16  0067 Para	  none
DATA				  16  07E3 Para	  none
STACK				  16  0064 Para	  Stack	  STACK
Turbo Assembler	 Version 5.0	    05-20-08 15:07:53	    Page 4
Error Summary



*Warning* C:\DOCUME~1\ADMINI~1\桌面\diliver.asm(8) Reserved word used as symbol: STACK


⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -