24个汇编实例小程序.docVIP

  • 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)

1亿VIP精品文档

相关文档