- 5
- 0
- 约3.2万字
- 约 45页
- 2022-09-07 发布于浙江
- 举报
18.已定义两个整数变量A和B,试编写程序完成以下功能
假设两个树种有一个是奇数,那么将奇数存入A中,偶数存入B中
假设两个数均为奇数,那么将两个数加1后存回原变量
假设两个数均为偶数,那么两个变量均不变
19.写一段子程序skiplines,完成输出空行的功能。空行的行数由用户在主程序中通过键盘输入,并将行数放在ax存放器中
20.设有10个学生成绩分别是76, 69,84,73,88,99,63,100和80。试编写一个子程序统计60-69分,70-79分,80-89分,90-99分和100分的人数,并分别放到S6,S7,S8,S9,S10单元中
21.编写子程序嵌套结构的程序,把整数分别用二进制和八进制显示出来
“123456”六个字符,第二次增加“
“d:\temp.txt〞“d:\temp2.txt〞
25.试编制一个程序,把bx存放器中的二进制数用十六进制数的形式在屏幕上显示出来
代码:
1.逆序输出字符串“BASED ADDRESSING〞
s1 segment stack ;定义栈段s1
dw 100 dup(?) ;定义栈空间为100
top label word ;top指向栈顶
s1 ends
s2 segment ;定义数据段s2
s db BASED ADDRESSING,$ ;定义字符串s
S2 ends
s3 segment ;定义代码段s3
assume cs:s3,ds:s2,ss:s1
main proc far
mov ax,s1 ;栈初始化——
mov ss,ax
lea sp,top ;——栈初始化
mov ax,s2 ;数据段初始化——
mov ds,ax ;——数据段初始化
mov si,15
l: mov dl,s[si] ;dl获取字符串s的最后一个〔从零开始的第十五个字符〕
int 21h
dec si ;存放器减一,准备获取下一个字符
cmp si,0
ja l
mov ah,4ch ;终止
int 21h
main endp
s3 ends
end main
2.从键盘上输入两个数,分别放到x,y单元,求出它们的和
s1 segment stack
dw 100h dup(?)
top label word
s1 ends
s2 segment
h1 db Please input x:,$ ;提示输入
h2 db Please input y:,$ ;提示输入
h3 db z=x+y:,$ ;提示输出
crlf db 0dh,0ah,24h ;定义回车换行
x dw ?
y dw ?
s2 ends
s3 segment
assume cs:s3,ds:s2,ss:s3
main proc far
mov ax,s1 ;初始化——
mov ss,ax
lea sp,top
mov ax,s2
mov ds,ax ;——初始化
“提示输入x〞的字符串
mov ah,9
int 21h
xor bx,bx ;bx清零,即把bx置零
InputX:
mov ah,1 ;输入一个字符
int 21h
cmp al,0dh ;判断时候为“回车〞字符
原创力文档

文档评论(0)