![]() | 第7章 文件控制块 | -187- | |||||||||||||||||||
READ_REC: L_TO_U: NEXT_CHAR: NOT_UPPER: |
MOV MOV INT OR JZ MOV MOV INT OR JNZ MOV MOV INT OR JZ CMP JNZ MOV MOV MOV CMP JB CMP JA ADD STOSB LOOP MOV MOV INT OR JNZ JMP |
AH,0FH DX,OFFSET FCB2 21H AL,AL READ_REC AH,16H DX,OFFSET FCB2 21H AL,AL ERR_EXIT AH,14H DX,OFFSET FCB1 21H AL,AL L_TO_U AL,3 ERR_EXIT CX,128 DI,80H AL,ES:[DI] AL,'A' NOT_UPPER AL,'Z' NOT_UPPER AL,20H NEXT_CHAR AH,15H DX,OFFSET FCB2 21H AL,AL ERR_EXIT READ_REC |
;打开FCB2指示的文件 ;打开操作正确吗? ;打开正确,转READ_REC ;建立FCB2指示的文件 ;文件正确建立了吗? ;文件未正确建立,转ERR_EXIT ;从FCB1指示的文件中读入一个记录 ;数据正确读入了吗? ;数据正确读入,转L_TO_U ;读入了一部分数据吗? ;其它错误,转ERR_EXIT ;将128个字符转换成小写 ;DI指向DTA首 ;取得一个字符 ;这个字符是"A"吗? ;比"A"小则转NOT_UPPER ;这个字符是"Z"吗? ;比"Z"大则转NOT_UPPER ;将字符转换成小写 ;将字符送回DTA ;处理下一个字符 ;选择DOS的15H功能 ;DX指向打开的FCB2 ;将处理过的字符写入FCB2指示的文件 ;数据正确写入了吗? ;数据写入不正确,转ERR_EXIT ;转READ_REC继续处理下一个记录 |
||||||||||||||||||
Copyright © 2004-2015 Reanimator | www.cookmoon.org |