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

📄 huibian.asm

📁 成绩数据库管理系统. 1.能够实现菜单显示、菜单选择、编辑(录入、插入、修改、删除等)、查找、显示、求总成绩、按总成绩排序(高→低)并显示、装入数据文件、数据文件存盘、退出、为数据动态分配存储空间[
💻 ASM
字号:
INCLUDE filefuc.mac 
EXTRN  OPENFILES:far ;调用子模块的声明
EXTRN  SEARCH:FAR
EXTRN  QIUHE:FAR 
EXTRN  PAIXU:FAR
EXTRN  CLSPS:FAR
EXTRN INPUT:FAR 
STSG SEGMENT STACK 'S'
	DW 32 DUP(?)
STSG ENDS
DATAS SEGMENT;数据段
PAGES DW ?
sign     DB 'A'
MSG1     DB 'editor-1','$'
MSG2     DB 'search-2','$' 
MSG3     DB 'refu-3','$' 
MSG4     DB 'nextpa-4','$'
MSG5     DB 'lastpa-5 ','$'
MSG6     DB 'select-6 ','$'
MSG7     DB 'delete-7 ','$'
MSG8     DB 'e-8  ','$'
MSG9     DB 'THE INSTRUCTION IS :','$'
MSG1S     DB 'STUDENTNU.','$'
MSG2S     DB 'NAME','$' 
MSG3S     DB 'COURSE1','$' 
MSG4S     DB 'COURSE2','$'
MSG5S     DB 'COURSE3','$'
MSG6S     DB 'COURSE4','$'
MSG7S     DB 'SUM','$'
MSG8S    DB 'LIST','$'
JMP_TAB DW EDITOR
        DW SEARCHS
        DW REFU
        DW NEXTPAGE
        DW LASTPAGE
        DW SELECT
       DW DELETE
 DW QUIT
DATAS ENDS
CODE1 SEGMENT;主
MAIN PROC FAR
    ASSUME CS:CODE1,DS:DATAS,SS:STSG
   MOV AH,0
     MOV AL,3
     INT 10H
      CLRCRN
       MOV AH,6
       MOV BH,70H
      MOV AL,0
      MOV CH,0
      MOV CL,0
      MOV DH,0
      MOV DL,79;此处输入代码段代码
      INT 10H
  MOV AH,6
       MOV BH,20H
      MOV AL,0
      MOV CH,1
      MOV CL,0
      MOV DH,1
      MOV DL,79;此处输入代码段代码
      INT 10H
        MOV AH,6
        MOV BH,70H
      MOV AL,0
      MOV CH,23
      MOV CL,0
      MOV DH,24
      MOV DL,79;此处输入代码段代码
      INT 10H
     mov AX,DATAS
     mov DS,AX
    CALL FAR PTR MENUDIS;调用子程序显示主菜单,及序号
   MOV PAGES,0
  MOV BX,PAGES
 CALL FAR PTR OPENFILES;调用子程序打开文件并显示  
       MOV DL,0;初始化列号
     MOV DH,2;初始化行号
     MOV BH,0
CURSORS:;显示行网格线
    MOV AH,2
    INT 10H
    PUSH AX
    PUSH BX
    PUSH CX
    MOV AH,9
    MOV AL,205
    MOV BL,0EH
    MOV CX,1
    INT 10H 
    INC DL
    CMP DL,80
    JL CURSORS
    MOV DL,0
    INC DH
    INC DH
    CMP DH,23
    JL  CURSORS
     MOV DL,1
     MOV DH,0
    MOV BH,0  
VCURSOR:;显示列网格线
    MOV AH,2
    INT 10H
    PUSH AX
    PUSH BX
    PUSH CX
    MOV AH,9
    MOV AL,186
    MOV BL,0EH
    MOV CX,1
    INT 10H 
    INC DH
    CMP DH,23
    JL VCURSOR
    MOV DH,0
    CMP DL,1
       JZ NEXTSS
       ADD DL,10
       JMP NEXTSSS
  NEXTSS:     ADD DL,13
NEXTSSS:    
    CMP DL,80
    JL  VCURSOR 
    
   
RDKB:
     PUTS 24,0,MSG9,7DH
     mov dh,24
     mov dl,21
     CURSOR
      MOV AH,1
    INT 21H;等待输入命令
    
    CMP AL,31H
    JB BEEP
    CMP AL,38H
    JA BEEP
    AND AL,0FH
    XOR AH,AH
    DEC AX
    ADD AX,AX
    LEA BX,JMP_TAB
    ADD BX,AX
  JMP [BX];跳转到对应菜单项
BEEP:
    MOV AH,14
    MOV AL,7
    MOV BH,0
    INT 10H
    JMP SHORT RDKB
EDITOR:
    MOV BX,PAGES
    PUTS 0,2,MSG1,7CH
    CALL FAR PTR INPUT
    CALL FAR PTR MENUDIS 
    JMP RDKB
    
  
SEARCHS:
    PUTS 0,15,MSG2,7CH
   CALL FAR PTR SEARCH
    CALL FAR PTR MENUDIS
    JMP RDKB
REFU:
    PUTS 0,25,MSG3,7CH
    CALL FAR PTR QIUHE
     CALL FAR PTR PAIXU
    CALL FAR PTR CLSPS
    MOV BX,PAGES
     CALL FAR PTR OPENFILES
     CALL FAR PTR MENUDIS  
   JMP RDKB
NEXTPAGE:
   PUTS 0,35,MSG4,7CH
  
CMP PAGES,2
JZ RDKB
CALL FAR PTR CLSPS
 INC PAGES
 MOV BX,PAGES
CALL FAR PTR OPENFILES
CALL FAR PTR MENUDIS  
  JMP RDKB
LASTPAGE:
  PUTS 0,45,MSG5,7CH
 
  CMP PAGES,0
  JZ RDKB
CALL FAR PTR CLSPS
  DEC PAGES
MOV BX,PAGES
CALL FAR PTR OPENFILES
CALL FAR PTR MENUDIS
    JMP RDKB
    
SELECT:
      NOP
    JMP RDKB
DELETE:
    NOP
    JMP RDKB
QUIT:
   PUTS 0,75,MSG8,7CH
    JMP REPEATESS
REPEATESS:    MOV AH,4CH
    INT 21H

MAIN ENDP
CODE1 ENDS
CODE2 SEGMENT
	  ASSUME CS:CODE2
MENUDIS PROC FAR
       PUSHREG
       MOV DH,0;显示主菜单
       MOV DL,2
       PUTS DH,DL,MSG1,7FH;显示编辑菜单提示
       ADD DL,13
       PUTS DH,DL,MSG2,7FH;显示查询菜单提示
       ADD DL,10
       PUTS DH,DL,MSG3,7FH;显示刷新菜单提示
       ADD DL,10 
       PUTS DH,DL,MSG4,7FH;显示编辑菜单提示
       ADD DL,10 
       PUTS DH,DL,MSG5,7FH;显示下一页菜单提示
       ADD DL,10  
       PUTS DH,DL,MSG6,7FH;显示上一页菜单提示
       ADD DL,10  
       PUTS DH,DL,MSG7,7FH;显示选定菜单提示
       ADD DL,10 
       PUTS DH,DL,MSG8,7FH;显示退出菜单提示
       MOV DL,0
       MOV DH,3
       MOV sign,'A'
NUM1:   
       PUTC DH,DL,sign,1EH;显示各条记录的序列
       ADD DH,2
       INC sign
       CMP DH,23
       JL NUM1
       MOV DL,2
       MOV DH,1
      PUTS DH,DL,MSG1S,2EH;显示学号提示
       ADD DL,13
       PUTS DH,DL,MSG2S,2EH;显示姓名提示
       ADD DL,10
       PUTS DH,DL,MSG3S,2EH;显示成绩提示
       ADD DL,10 
       PUTS DH,DL,MSG4S,2EH;显示成绩提示
       ADD DL,10 
       PUTS DH,DL,MSG5S,2EH;显示成绩提示
       ADD DL,10  
       PUTS DH,DL,MSG6S,2EH;显示成绩提示
       ADD DL,10  
       PUTS DH,DL,MSG7S,2EH;显示部分提示
       ADD DL,10 
       PUTS DH,DL,MSG8S,2EH;显示名次提示
       POPREG
       RET
MENUDIS ENDP       
CODE2 ENDS	  
END MAIN



















⌨️ 快捷键说明

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