⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 输入输出.txt

📁 汇编输入输出定义及举例
💻 TXT
字号:
input  proc   near                            
       lea    dx,mess1                     ;显示mess1的内容
       mov    ah,09
       int    21h

       mov    si,0                         ;将SI置零
       mov    count,0                      ;将count置零
enter:
       call   decibin                      ;调用decibin子程序
       inc    count                        ;count=count+1
       cmp    dl,','                       ;比较dl的内容和‘,’
       je     store                        ;如果一样跳转执行store
       cmp    dl,13                        ;比较dl的内容和 ‘回车’
       je     exit2                        ;如果相同,跳转执行exit2
       jne    error                        ;如果不相同,执行error
store:                            
       mov    grade[si],bx                 ;把bx的内容放入grade数组
       add    si,2                         ;si=si+2
       jmp    enter                        ;跳转执行enter
error:                 
       lea    dx,mess2                     ;显示mess2的内容
       mov    ah,09
       int    21h
exit2: 
       mov    grade[si],bx                 ;把bx的内容放入grade数组
       call   crlf                         ;调用crlf子函数
       ret                                 ;返回enter
input  endp
rankp  proc   near
       mov    ax,datarea  
       mov    ds,ax
       mov    cx,count                     ;将count的值赋给CX
       dec    cx                           ;cx=cx-1
loop1:
       mov    di,cx                        ;循环执行将cx的值赋给di
       mov    bx,0                         ;将bx置零
loop2:
       mov    ax,grade[bx]                 ;冒泡法排序
       cmp    ax,grade[bx+2]               ;比较grade数组中第一个数
       jge    continue                     ;与第二个数的大小如果第一
       xchg   ax,grade[bx+2]               ;个数不小于第二个数,跳转
       mov    grade[bx],ax                 ;执行continue,否则交换这
                                            ;两个数
cotinue:                                     
       add    bx,2                          ;bx=bx+2
       loop   loop2                         ;循环执行loop2的内容
       mov    cx,di                         ;将di的值赋给cx
       loop    loop1                        ;循环执行loop1的内容
       ret                                  ;返回loop2
rankp  endp
output proc   near
       lea    dx,mess3                      ;显示mess3的内容
       mov    ah,09
       int    21h
       
       mov    si,0                          ;将si置零
       mov    di,count                      ;把count的值送给di
next1:
       mov    bx,grade[si]                  ;把数组grade的第一个字送
       call   binidec                       ;入bx中,调用binidec
       cmp    di,1                          ;比较bx和1
       je     next3                         ;如果相等,跳转执行next3
       mov    dl,','                        ;将‘,’放入dl中
       mov    ah,02                         ;显示单个字符‘,’
       int    21h
next3:
       add    si,2                          ;si=si+2
       dec    di                            ;di=di-1
       jnz    next1                         ;如果di不等于0执行next1
       call   crlf                          ;调用crlf子程序
       ret                                  ;返回next1
output endp

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -