好文档 - 专业文书写作范文服务资料分享网站

汇编课程设计-查找电话号码 

天下 分享 时间: 加入收藏 我要投稿 点赞

汇编课程设计-查找电话号码

《汇编语言程序设计》课程设计说明书 查找电话号码

1.1 要求程序建立一个可存放50项的电话号码表,每项包括人名(20个字符)及电话

号码(8个字符)两部分;

1.2程序可接收输入人名及相应的电话号码,并把它们加入电话号码表中; 1.3凡有新的输入后,程序应按人名对电话号码表重新排序;

1.4程序可接收需要查找电话号码的人名,并从电话号码表中查出其电话号码,再在屏

幕上以如下的格式显示出来: name tel **** **** 1 源程序 DATA SEGMENT

TEL_TAB DB 1500 DUP(' ') TEL_TAB_NO DB 0

LINE1 DB '*************************************************$' A DB ' Please input \S DB ' Please input \D DB ' Please input \O DB ' Input other words to exit $'

LINE2 DB '************************************************$'

INPUTN DB 'Please input the name :','$' INPUTP DB 'Please input the phone number :','$' CMD DB 2,0,2 DUP(?) PRINTF DB 'name tel $' PUTNAME DB 21,0,21 DUP(' ')

NOTFOUND DB 'The record you searched is not exsit $' YON DB 'n' ;用于判断是否找到所输入的名字 第 1 页 共 13 页

《汇编语言程序设计》课程设计说明书 DATA ENDS CODE SEGMENT MAIN PROC FAR

ASSUME CS:CODE,DS:DATA START: MOV AX,DATA MOV DS,AX

ADDNEW: ;添加新的记录 LEA DX,INPUTN ;输出字符 MOV AH,09H INT 21H

CALL STOR_NAME ;输入名字并保存到表中 CALL CRLF LEA DX,INPUTP MOV AH,09H

INT 21H

CALL INPHONE ;输入电话并保存到表中 INC TEL_TAB_NO

CALL NAME_SORT ;将输入的名字和电话按名字排序 AGAIN:

CALL CRLF ;回车并换行模块 LEA DX,LINE1 ;输出菜单 MOV AH,09H 第 2 页 共 13 页

《汇编语言程序设计》课程设计说明书 INT 21H LEA DX,A MOV AH,09H INT 21H CALL CRLF LEA DX,S MOV AH,09H INT 21H CALL CRLF LEA DX, D MOV AH,09H INT 21H CALL CRLF LEA DX,O

MOV AH,09H INT 21H CALL CRLF LEA DX,LINE2 MOV AH,09H INT 21H ;菜单结束 LEA DX,CMD ;输入命令 MOV AH,0AH INT 21H

第 3 页 共 13 页

《汇编语言程序设计》课程设计说明书 MOV BX,DX

MOV DX,[BX+2] ;让用户选择下一步所要进行的动作 AND DX,00FFH

CMP DL,41H ;当用户输入\时跳到添加模块 JZ ADDNEW

CMP DL,53H ;当用户输入\时跳到查找模块 JZ SEARCH

CMP DL,44H ;当用户输入\时跳到显示模块 JZ DISPLAYALL JMP CODE_EXIT DISPLAYALL: LEA DX,PRINTF MOV AH,09H

INT 21H CALL CRLF

CALL PRINT_ALL ;排序后,打印所有已记录的名字和电话号码 JMP AGAIN SEARCH: LEA DX,INPUTN MOV AH,09H INT 21H MOV CX,20 MOV SI,0 SETSPACE:

MOV PUTNAME[SI+2],' ' INC SI LOOP SETSPACE LEA DX,PUTNAME 第 4 页 共 13 页

《汇编语言程序设计》课程设计说明书 MOV AH,0AH INT 21H XOR BX,BX

MOV BL,PUTNAME[1] MOV PUTNAME[BX+2],'$'

CALL SEARCH_NAME ;查找并打印所有符合的名字及电话号码 JMP AGAIN

72v392cp3206i7k4fff923x6i11g5t00rq5
领取福利

微信扫码领取福利

微信扫码分享