主题:救命啊!!!!!!!!!!!!!!!!!
zhouweijia
[专家分:0] 发布于 2005-12-21 13:22:00
用汇编语言编写程序啊
编写一个子程序嵌套结构的程序模块,分别从键盘输入姓名及8个字符的电话号码,并以一定的格式显示出来。
主程序TELIST:
(1)显示提示符INPUT NAME:;
(2)调用子程序INPUT_NAME输入姓名;
(3)显示提示符INPUT A TELEPHONE NUMBER:;
(4)调用子程序INPHONE输入电话号码;
(5)调用子程序PRINTLINE显示姓名及电话号码。
子程序INPUT_NAME:
(1)调用键盘输入子程序GETCHAR,把输入的姓名存放在INBUF 缓冲区中;
(2)把INBUF中的姓名移入输出行OUTNAME。
子程序INPHONE:
(1)调用键盘输入子程序GETCHAR,把输入的8位电话号码存放在INBUF
缓冲区中;
(2)把INBUF中的号码移入输出行OUTPHONE。
子程序PRINTLINE:
显示姓名及电话号码,格式为:
NAME TEL.
*** ***
回复列表 (共3个回复)
沙发
breakind [专家分:150] 发布于 2005-12-21 18:42:00
不知有无错,仅供参考:
stack segment
db 64 dup(?)
tos label byte
stack ends
data segment
buffer label byte
maxlen db 20
len db ?
inbuf db 20 dup(' ')
outname db 20 dup(?),'$'
outphone db 8 dup(?),'$'
msg1 db 'input name:$'
msg2 db 'input a telephone number:$'
form db 'name',9 dup(20h),'tel','$'
data ends
;data segment ends
code segment
begin proc far ;inital
assume cs:code,ds:data,ss:stack
start:
mov ax,stack
mov ss,ax
mov sp,offset tos
mov ax,data
mov ds,ax
mov es,ax
mov ah,09h ;get name
lea dx,msg1
int 21h
call crlf
call input_name
call crlf
mov ah,09h ;get phone number
lea dx,msg2
int 21h
call crlf
call inphone
call crlf
call printline
mov ax,4c00h
int 21h
begin endp
getchar proc near
mov ah,0ah
lea dx,buffer
int 21h
ret
getchar endp
input_name proc near
call getchar
mov cx,20
cld
lea si,inbuf
lea di,outname
rep movsb
ret
input_name endp
inphone proc near
call getchar
mov cx,8
cld
lea si,inbuf
lea di,outphone
rep movsb
ret
inphone endp
printline proc near
mov ah,09h
lea dx,form
int 21h
mov dl,0dh ;change the line
mov ah,2
int 21h
mov dl,0ah
int 21h
mov ah,09h
lea dx,outname
int 21h
call crlf
mov ah,09h
lea dx,outphone
int 21h
ret
printline endp
crlf proc near
mov dl,0dh
mov ah,2
int 21h
mov dl,0ah
mov ah,2
int 21h
ret
crlf endp
code ends
end start
板凳
piaoyu3 [专家分:20] 发布于 2005-12-21 20:27:00
汇编程序!
用汇编语言编写一个执行 “ R〈---X+Y-3 ” 计算的子程序COMPUTE:其中X,Y及R均为字数组。
COMPUTE与其调用程序都在同一代码段中,数据段D-SEG中包含x和y数组,数据段E-SEG中包含R数组,同时写出主程序调用COMPUTE过程的部分。
1,如果主程序和COMPUTE在同一程序模块中,但不在同一代码中,程序要如何修改??
2,如果主程序和COMPUTE不在同一模块中,程序要怎样修改!??
这道题目是汇编语言程序设计第2版第6章最后一题
大哥你好强啊 ·!帮我 做完 这题啊 万分感谢啊
3 楼
zhouweijia [专家分:0] 发布于 2005-12-21 23:07:00
回一楼的啊
老大啊
好象结果的格式不一样啊
看到的时候能不能帮我运行下看看
我这里运行的结果格式是不一样的
我来回复