鱼C论坛

 找回密码
 立即注册
查看: 2351|回复: 7

计算机三级PC技术上机问题

[复制链接]
发表于 2012-9-17 15:01:15 | 显示全部楼层 |阅读模式
20鱼币
EXTRN      LOAD:FAR,SAVE:FAR
N        EQU         20
STAC     SEGMENT   STACK
         DB          128 DUP (?)
STAC     ENDS
DATA     SEGMENT
SOURCE   DB          N DUP(?)
RESULT   DB          N DUP(0)
NAME0    DB          'INPUT1.DAT',0
NAME1    DB          'OUTPUT1.DAT',0
DATA     ENDS
CODE     SEGMENT
           ASSUME     CS:CODE, DS:DATA, SS:STAC
START    PROC        FAR
           PUSH        DS
           XOR         AX,AX
           PUSH        AX
           MOV         AX,DATA
           MOV         DS,AX
           LEA         DX,SOURCE         ; 数据区起始地址
           LEA         SI,NAME0          ; 原始数据文件名
           MOV         CX,N              ; 字节数
           CALL        LOAD              ; 从 'INPUT.DAT'中读取数据
;  **** BEGIN ****
           LEA         SI,SOURCE
           _____________________          ; ①
           __________________             ; ②
NEXT:      MOV        AL,[SI]
           CMP        AL,'0'
           JB         _______             ; ③
           __________________             ; ④
           JBE        ____                ; ⑤
           CMP        AL,'A'
           JB         INVALID
           CMP        AL, ____            ; ⑥
           JA         ____                ; ⑦
           ADD        AL,9
STRIP:     AND        AL,____             ; ⑧
INVALID:   MOV        [DI],AL
           ADD        SI,1
           ADD        DI,1
           LOOP       ____                ; ⑨
;  ****  END  ****
           LEA         DX,RESULT         ; 结果数据区首址
           LEA         SI,NAME1          ; 结果文件名
           MOV         CX,N              ; 结果字节数
           CALL        SAVE              ; 保存结果到文件
           RET
START    ENDP
CODE     ENDS
         END         START


刚开始的这段代码
EXTRN      LOAD:FAR,SAVE:FAR
N        EQU         20
是干嘛的

还有这些代码DB前面的字符是干嘛用的小甲鱼好像没讲!!


SOURCE   DB          N DUP(?)
RESULT   DB          N DUP(0)
NAME0    DB          'INPUT1.DAT',0
NAME1    DB          'OUTPUT1.DAT',0
还有谁那里有小甲鱼的那个指令查询金手指麻烦给下下载地址!

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
发表于 2012-9-17 15:37:14 | 显示全部楼层
整齐一点行不~
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2012-9-17 15:41:05 | 显示全部楼层

DATA     SEGMENT
SOURCE   DB          N DUP(?)
RESULT   DB          N DUP(0)
NAME0    DB          'INPUT1.DAT',0
NAME1    DB          'OUTPUT1.DAT',0
DATA     ENDS
CODE     SEGMENT
           ASSUME     CS:CODE, DS:DATA, SS:STAC
START    PROC        FAR
           PUSH        DS
           XOR         AX,AX
           PUSH        AX
           MOV         AX,DATA
           MOV         DS,AX
           LEA         DX,SOURCE         ; 数据区起始地址
           LEA         SI,NAME0          ; 原始数据文件名
           MOV         CX,N              ; 字节数
           CALL        LOAD              ; 从 'INPUT.DAT'中读取数据
;  **** BEGIN ****
           LEA         SI,SOURCE
           _____________________          ; ①
           __________________             ; ②
NEXT:      MOV        AL,[SI]
           CMP        AL,'0'
           JB         _______             ; ③
           __________________             ; ④
           JBE        ____                ; ⑤
           CMP        AL,'A'
           JB         INVALID
           CMP        AL, ____            ; ⑥
           JA         ____                ; ⑦
           ADD        AL,9
STRIP:     AND        AL,____             ; ⑧
INVALID:   MOV        [DI],AL
           ADD        SI,1
           ADD        DI,1
           LOOP       ____                ; ⑨
;  ****  END  ****
           LEA         DX,RESULT         ; 结果数据区首址
           LEA         SI,NAME1          ; 结果文件名
           MOV         CX,N              ; 结果字节数
           CALL        SAVE              ; 保存结果到文件
           RET
START    ENDP
CODE     ENDS
         END         START
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-9-17 15:44:32 | 显示全部楼层
N EQU 20就相当于N=20
extrn就是声明后面用到的那些符号在本模块中是没有定义的,就是说后面的变量在其他节区才有定义,后面的far说明远调用
db前面的东西是你自己定义的变量名(不完全等同传统的变量名,相当于把当前这个内存地址给了个名字)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-9-17 17:05:17 | 显示全部楼层
SOURCE   DB          N DUP(?)              定义N个?
RESULT   DB          N DUP(0)              定义N个0
NAME0    DB          'INPUT1.DAT',0     NAME0含有
NAME1    DB          'OUTPUT1.DAT',0 NAME1含有
N        EQU         20                         N=20
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-9-17 19:14:55 | 显示全部楼层
What hell is this!
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2012-9-21 00:13:42 | 显示全部楼层
看看南开上机软件吧
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2015-8-20 16:22:53 | 显示全部楼层
{:1_1:}
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-6 20:30

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表