您的位置: 首页 >> 新闻中心 >> 计算机 >> IT认证 >> 计算机等级 >> 计算机三级
HELLOWORLD进阶汇编程序系列
■ 最新课程推荐更多课程>>
学校培训课程开课时间上课地点优惠价报名
金 同 方 计算机等级二级C++ 电话预约人大总部¥784
金 同 方 计算机等级二级JAVA 电话预约人大总部¥1470
理工文化 等级考试二级ACCESS电话预约理工大学教学¥676
新 东 方 C语言等级考试远程班滚动开班远程课堂¥98
金 同 方 计算机等级一级辅导班电话预约人大总部¥450
  TITLE   ***HELLO,WORLD进阶程序之选择分支 BY LLUCT***

  DATA    SEGMENT   ;定义数据段
  MSG1    DB      '***WELCOME TO MY PROGRAM BY LLUCT***','$'
  ;定义输出的第一个字符串信息,字符串必须用DB定义,$为结束标志
  MSG2    DB      '1:BASIC MESSAGE 2:ADVANCED MESSAGE','$'
  ;定义输出的字符串信息:选择菜单
  MSG3    DB      'PLEASE CHOOSE:','$'
  ;定义输出的字符串信息:选择前缀
  MSG4    DB      'HELLO,WORLD!^-^','$'
  ;定义输出的字符串信息:分支1的信息
  MSG5    DB      'THIS IS MY FIRST ASM_86 PROGRAM! @^-^@','$'
  ;定义输出的字符串信息:分支2的信息
  ERRMSG  DB      'CHOOSE ERROR! -_-b','$'
  ;定义输出的字符串信息:选择错误信息
  DATA    ENDS   ;数据段结尾

  CODE    SEGMENT   ;定义代码段
          ASSUME  CS:CODE  ;规定CS的内容
          ASSUME  DS:DATA  ;规定DS的内容

  START:  MOV     AX,DATA  ;程序从START开始
          MOV     DS,AX  ;DS置初值,DATA的段地址

          CALL ENTER  ;调用显示回车换行子程序
   LEA     DX,MSG1  ;输出第一个字符串的偏移地址
          CALL DISPCHS  ;调用显示字符串子程序
          CALL    ENTER  ;调用显示回车换行子程序
          CALL    ENTER  ;这个...同上啊^-^

          LEA     DX,MSG2  ;输出第二个字符串的偏移地址
          CALL DISPCHS  ;调用显示字符串子程序

  AGAIN:  CALL    ENTER  ;定义AGAIN标号.用于选择错误循环

          LEA     DX,MSG3  ;输出第三个字符串的偏移地址
          CALL DISPCHS  ;调用显示字符串子程序

          MOV     AH,01H  ;调用1号功能:从键盘输入一个字符并回显
          INT     21H  ;完成输入回显
          CMP     AL,'1'  ;输入的字符和1相比较
          JE      BASICP  ;如果相等,转移到BASICP标号(JE=Jump if Equal)
          CMP     AL,'2'  ;输入的字符和2相比较             ||
          JE      ADVANP  ;如果相等,转移到ADVANP标号(JE=如果相等就转移)
          JMP     ERROR  ;否则就无条件转移到ERROR标号

  EXIT:   MOV     AH,4CH  ;4C号功能调用:终止当前程序并返回调用程序
          INT     21H  ;返回DOS

  BASICP: CALL    ENTER  ;什么,还要解释啊.晕-_-!!!
          LEA     DX,MSG4  ;输出第三个字符串的偏移地址
          CALL DISPCHS  ;调用显示字符串子程序
          CALL    ENTER  ;..........
          JMP     EXIT  ;无条件转移到EXIT标号

  ADVANP: CALL    ENTER  ;55555555
          LEA     DX,MSG5  ;解释了四次,应该懂了吧
          CALL DISPCHS  ;调用显示字符串子程序
          CALL    ENTER  ;再问就死给你看
          JMP     EXIT  ;无条件转移到EXIT标号

  ERROR:  CALL    ENTER
          LEA     DX,ERRMSG ;输出选择错误信息
          CALL DISPCHS  ;调用显示字符串子程序
          MOV DL,07H  ;输出ASCII码的报警(响铃)控制符BEL(07H)
   CALL DISPCH  ;调用显示单个字符子程序
   CALL    ENTER
          JMP     AGAIN

  DISPCH  PROC    NEAR  
  ;显示单个字符子程序,NEAR说明子程序和主程序在同一个代码段中(现无主程序调用)
          MOV     AH,02H  ;2号功能调用:显示器输出字符
          INT     21H  ;完成输出显示
          RET   ;返回
  DISPCH  ENDP   ;子程序结尾

  ENTER   PROC    NEAR  ;显示回车换行子程序
          MOV     DL,0DH  ;输出ASCII码的回车控制符CR(0DH)
          CALL    DISPCH  ;调用显示单个字符子程序
          MOV     DL,0AH  ;输出ASCII码的换行控制符LF(0AH)
          CALL    DISPCH  ;调用显示单个字符子程序
          RET   ;返回
  ENTER   ENDP   ;子程序结尾

本新闻共2页,当前在第1页  1  2

  影视动画培训   北大BEC培训官方报名网站   2008美国夏令营启航官方指定报名网站   2008留学第一站!  
  北师大 火星时代
共举影视动画培训之鼎
  北大BEC培训官方报名网站
现在报名独享95折!
  2008年国家职业资格考试
一次过关完全备考手册
  2008留学第一站
留学资讯尽在精英留学站!
 
上一篇:汇编语言---套装软件制作(2)
下一篇:抓取屏幕内容(字符模式)
 相关新闻
·2006年4月全国计算机等级考试三级笔试试卷信息管理技术试题·2005年9月第22次全国计算机等级考试三级信息管理技术考试真题
·2004年9月全国计算机等级考试三级信息管理技术笔试试卷·2004年4月全国计算机等级考试三级信息管理技术笔试试卷
·2003年4月全国计算机等级考试三级信息管理试卷·2002年9月全国计算机等级考试三级信息技术试卷(含答案)
·2002年全国计算机等级考试三级笔试样题(信息管理技术)·Win32调试API第三部分
·Win32调试API第二部分·Win32调试API第一部分
·PC辅导:WINDOWS钩子函数·系统托盘中的快捷图标
·三级PC辅导:超类化·PC技术辅导:窗口子类化
·PC技术辅导:列表视图控件·抓取屏幕内容(字符模式)
 
◇ 重点栏目导航
◇ 精英服务承诺
教育顾问:010-51660910
QQ交流:138660910
相关资料
·二级Access重点难点分析:模块
·2008年4月全国计算机等级考试调整方案
·学习攻略:清华学生谈计算机等级考试
·全国计算机等级考试机试经验三则
·计算机等级考试应如何备考
·计算机等级考试心得:考的就是细心
·计算机等级C语言上机考试改错题分析总结
·计算机等级考试二级VB10个编程技巧
·计算机等级二级C语言程序设计100例九
·计算机等级考试二级VB的复习方法
相关试题
·计算机等级考试二级Access模拟试题1
·计算机二级VisualFoxPro笔试试卷
·计算机等级考试二级C语言模拟练习一[1]
·计算机等级考试上机模拟题(二级C语言)
·Visual FoxPro语言程序设计
·历年计算机等级考试四级
·2005年4月三级网络技术笔试试卷及答案(5)
·07年4月计算机等级考试二级VF考前试题解
·07年4月计算机等级考试二级VF考前密卷
·计算机等级考试PC技术练习题:第六章常用
相关热贴
·全国计算机等级考试——评分标准
·[分享]上机编程题算法实现精选
·2007年下半年北京市全国计算机等级考试报
·C语言初学者的十八颗“地雷”
·CFA LEVEL II介绍
·2008年全国计算机等级调整方案
·C语言运算符的“优先级口决”
·Turbo C 程序设计初步
·程序员如何掌握计算机英语
·和大家分享我自己成功的经验!