汇编实验:查找电话号码

这是一个汇编语言实验,涉及创建一个能存储50个条目的电话号码簿。程序需接收人名和电话,将其添加并按人名排序。同时,程序应能根据输入的人名搜索电话号码并显示。实验中遇到了处理重复输入的问题。
摘要由CSDN通过智能技术生成

 实验2.4  查找电话号码

      1.题目:查找电话号码

  2.实验要求:

(1)要求程序建立一个可存放50项的电话号码表,每项包括人名(20个字符)以及电话号码(8个字符)两部分;

(2)程序可接收输入人名及相应的电话号码,并把它们加入电话号码表中;

(3)凡有新的输入后,程序按照人名对电话号码重新排序;

(4)程序可接收需要查找电话号码的人名,并从电话号码表中查出其电话号码,再在屏幕上按照格式输出。

;********************************************************************
datarea  segment
mess1    db    'Please input name:','$'
mess2    db    'Please input telephone number:','$'
mess3    db    'Do you want to search a telephone number?(y/n)','$'
mess4    db    0dh,0ah,'what is the name?','$'
mess5    db    'Not find',0dh,0ah,'$'
mess6    db    'the number you want to store:','$'
crlf     db     0dh,0ah,'$'
stokin1  label  byte
max1      db     21
act1      db     ?
stokn1    db     21 dup(?)
stokin2  label  word
max2      db     9
act2      db     ?
stokn2    db     9 dup(?)
numtable   db     50 dup(28 dup(?))
name_count dw    0
endaddr   dw     ?
swapped   dw     ?
totalnum dw   ?
savenp    db     28 dup(?),0dh,0ah,'$'
searchaddr dw    ?
flag      db     ?
flagb      db     ?
show      db     'name                phone',0dh,0ah,'$'
datarea  ends
;********************************************************************
codesg  segment
   assume ds:datarea,cs:codesg,es:datarea
main    proc    far
       mov ax,datarea
       mov ds,ax
       mov es,ax
       lea di,numta
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值