数学建模社区-数学中国

标题: [求助]汇编语言课程设计 [打印本页]

作者: guoliangrui    时间: 2007-11-29 23:47
标题: [求助]汇编语言课程设计
<p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; LINE-HEIGHT: 120%; mso-char-indent-count: 2.0;"><span style="COLOR: black; FONT-FAMILY: 宋体;">汇编语言课程设计:</span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; LINE-HEIGHT: 120%; mso-char-indent-count: 2.0;"><span style="COLOR: black; FONT-FAMILY: 宋体;"><span style="BORDER-RIGHT: windowtext 1pt solid; PADDING-RIGHT: 0cm; BORDER-TOP: windowtext 1pt solid; PADDING-LEFT: 0cm; FONT-SIZE: 10.5pt; PADDING-BOTTOM: 0cm; BORDER-LEFT: windowtext 1pt solid; PADDING-TOP: 0cm; BORDER-BOTTOM: windowtext 1pt solid; FONT-FAMILY: 宋体; mso-ascii-font-family: &quot;Times New Roman&quot;; mso-hansi-font-family: &quot;Times New Roman&quot;; mso-bidi-font-size: 14.0pt; mso-bidi-font-family: &quot;Times New Roman&quot;; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA; mso-border-alt: solid windowtext .5pt;"><strong>电话簿的管理程序设计</strong></span></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; LINE-HEIGHT: 120%; mso-char-indent-count: 2.0;"><span style="COLOR: black; FONT-FAMILY: 宋体;"></span></p><p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; TEXT-INDENT: 21pt; LINE-HEIGHT: 120%; mso-char-indent-count: 2.0;"><span style="COLOR: black; FONT-FAMILY: 宋体;">基本功能</span><span style="FONT-FAMILY: 宋体; mso-ascii-font-family: &quot;Times New Roman&quot;; mso-hansi-font-family: &quot;Times New Roman&quot;;">:设人名及电话号码已分别存入指定数据存储单元,查找从键盘输入的指定人名的电话并显示。要求界面友好。</span></p><p><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: &quot;Times New Roman&quot;; mso-hansi-font-family: &quot;Times New Roman&quot;; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: &quot;Times New Roman&quot;; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;">增强功能:从键盘输入人名及电话号码再存入数据存储单元</span></p><p><span style="FONT-SIZE: 10.5pt; FONT-FAMILY: 宋体; mso-ascii-font-family: &quot;Times New Roman&quot;; mso-hansi-font-family: &quot;Times New Roman&quot;; mso-bidi-font-size: 12.0pt; mso-bidi-font-family: &quot;Times New Roman&quot;; mso-font-kerning: 1.0pt; mso-ansi-language: EN-US; mso-fareast-language: ZH-CN; mso-bidi-language: AR-SA;">不太懂,来求助!</span></p>
作者: guoliangrui    时间: 2008-1-20 20:18
标题: ..
<p>都那么久了,竟然没人回答,</p><p>还是靠自己把他给弄出来了</p><p>代码如下,希望大虾们能多给点宝贵意见:</p><p>DATAS SEGMENT<br/>count db 4 <br/>buf   db 'ji        ','54698765  ',<br/>         'liu       ','69856456  ',<br/>         'guo       ','56566898  ',<br/>         'zhang     ','569874123 ',<br/>         20 dup(10 dup (0),10 dup (0))    <br/>_name db 10,<br/>          ?,<br/>         10 dup(?)<br/>num   db 10,<br/>       ?,<br/>       10 dup(?)<br/>
/ X" J7 ?- H4 X. j- m/ \* U5 a                <br/>temp  db 23 dup(?),0dh,0ah,'$'<br/>menuitem db '             people phonenumber management system',0ah,0dh<br/>      db '     *********************************************************',0ah,0dh<br/>   db '     *             this   is    main   menu                  *',0ah,0dh      <br/>     db '     *  1.  query  (q)                                       *',0ah,0dh<br/>    db '     *  2. insert  (i)                                       *',0ah,0dh<br/>     db '     *  3.  exit   (e)                                       *',0ah,0dh<br/>    db '     *********************************************************',0ah,0dh<br/>      db 'please select(q,i or e):',0ah,0dh,'$'<br/>mess1 db 'name',10 dup(' '),'tel',0ah,0dh,'$'<br/>mess2 db 'please Input the name'<br/>mess3 db 'please Input the telephone number'<br/>mess4 db 0ah,0dh,'$'<br/>mess5 db 'Insert succed!$'<br/>err1  db 'there is not exsit the people!',0ah,0dh,'$'<br/>DATAS ENDS</p><p>STACKS SEGMENT<br/>    db 2000 dup(?)<br/>STACKS ENDS</p><p>CODES SEGMENT<br/>    ASSUME CS:CODES,DSATAS,SS:STACKS</p><p>main proc far<br/>      mov ax,datas<br/>      mov ds,ax<br/>      mov es,ax                   <br/>n1:   lea dx,menuitem  <br/>      mov ah,9<br/>      int 21h <br/>      mov ah,1<br/>      int 21h<br/>      cmp al,'q'<br/>      jnz n2            <br/>      call query<br/>      jmp  n1<br/>n2:   cmp al,'i'<br/>      jnz  n3<br/>      call insert<br/>      jmp  n1   <br/>n3:   cmp al,'e'<br/>      jz  exit<br/>      jmp  n1<br/>exit:<br/>     mov ah,7<br/>     int 21h<br/>     mov ah,4ch<br/>     int 21h<br/>     ret<br/>main endp</p><p>query proc near                ;查找总菜单<br/>   push ds<br/>   xor ax,ax<br/>   push ax<br/>   mov ax,datas<br/>   mov ds,ax<br/>   mov es,ax<br/>   cld<br/>   lea dx,mess4<br/>   mov ah,9<br/>   int 21h<br/>   lea dx,mess2 <br/>   mov ah,9<br/>   int 21h <br/>   call ipname<br/>   lea dx,mess4<br/>   mov ah,9<br/>   int 21h<br/>   call search<br/>   mov ah,7<br/>   int 21h<br/>   ret <br/>query endp</p><p>ipname proc near              ;从键盘输入名字<br/>   lea dx,_name<br/>   mov ah,10<br/>   int 21h<br/>   mov bh,0<br/>   mov bl,_name+1<br/>   mov cx,9<br/>   sub cx,bx<br/>r: <br/>   mov _name[bx+2],20h       ;补空格<br/>   inc bx<br/>   loop r<br/>   ret<br/>ipname endp</p><p>search proc near          <br/>    lea  di,buf<br/>    push di<br/>    mov  bl,count<br/>    mov bh,0<br/>l:  <br/>    lea si,_name+2<br/>    mov cx,9<br/>    repe cmpsb<br/>    jz  n4<br/>    pop di<br/>    add di,20<br/>    push di<br/>    dec bx<br/>    jnz l<br/>    lea dx,err1<br/>    mov ah,9<br/>    int 21h<br/>    jmp n1<br/>n4:<br/>    pop di<br/>    mov si,di<br/>    lea di,temp       <br/>    mov cx,20<br/>    rep movsb               ;将内容传给 temp<br/>    lea dx,mess1<br/>    mov ah,9<br/>    int 21h        <br/>    lea dx,temp<br/>    mov ah,9<br/>    int 21h<br/>    ret<br/>search endp</p><p>insert proc near<br/>   lea dx,mess4<br/>   mov ah,9<br/>   int 21h<br/>   lea dx,mess2<br/>   mov ah,9<br/>   int 21h<br/>   lea dx,mess4<br/>   mov ah,9<br/>   int 21h<br/>   call ipname<br/>   lea dx,mess4<br/>   mov ah,9<br/>   int 21h<br/>   lea dx,mess3<br/>   mov ah,9<br/>   int 21h<br/>   call ipnumber  <br/>   cld<br/>   mov al,20<br/>   mov cl,count<br/>   mul cl<br/>   lea di,buf<br/>   add di,ax<br/>   lea si,_name+2<br/>   mov cx,10<br/>   rep movsb<br/>   lea si,num+2<br/>   mov cx,10<br/>   rep movsb<br/>   inc count<br/>   lea dx,mess5<br/>   mov ah,9<br/>   int 21h<br/>   lea dx,mess4<br/>   mov ah,9<br/>   int 21h<br/>   mov ah,7<br/>   int 21h<br/>   ret<br/>insert endp</p><p>ipnumber proc near<br/>     lea dx,num<br/>     mov ah,10<br/>     int 21h<br/>     lea dx,mess4<br/>     mov ah,9<br/>     int 21h<br/>     mov bh,0<br/>     mov bl,num+1<br/>     mov cx,10<br/>     sub cx,bx<br/>c1:  mov num[bx+2],20h<br/>     inc bx<br/>     loop c1<br/>     ret<br/>ipnumber endp<br/>( b& d4 S* w4 W, @# P) o$ Q' [
                <br/>codes ends<br/> end main </p>[attach]3907[/attach]<br/>

汇编课程设计报告.doc.doc

140.5 KB, 下载次数: 16, 下载积分: 体力 -2 点

汇编课程设计报告.doc


作者: defg146    时间: 2008-12-18 18:39
提示: 作者被禁止或删除 内容自动屏蔽




欢迎光临 数学建模社区-数学中国 (http://www.madio.net/) Powered by Discuz! X2.5