实验内容

1. 重复从键盘输入不超过5位的十进制数,按回车键结束输入。
2. 将该十进制数转换成十六制数;结果以十六进制数的形式显示在屏幕上。
3. 如果输入非数字字符,则报告出错信息,重新输入。
4. 键盘输入一字符串,以空格结束,统计其中数字字符的个数,在屏幕显示。
5. 输入’Q’或’q’时程序运行结束。

流程图

实验源码

STACK1 SEGMENTDB 128 DUP(0)
STACK1 ENDSDATA SEGMENTTISHIINFO            DB 'Please input a number:',0AH,0DH,'$'STRING           DB 0AH,0DH,'String:$'INPUT                DB 20HDB 100 DUP('$')RESULT           DB 'Hex:$'ERRORINFO           DB 'Please input again:',0AH,0DH,'$'
DATA ENDSCODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK1
START:MOV AX, STACK1MOV SS, AXMOV AX, DATAMOV DS, AXMOV DX, OFFSET TISHIINFOMOV AH, 09HINT 21HMOV BX,0
READ:MOV DX, OFFSET STRINGMOV AH, 09HINT 21HMOV DX, OFFSET INPUTMOV AH, 0AHINT 21HMOV BX, OFFSET INPUT+1 MOV CX, [BX]MOV CH, 0MOV DX, OFFSET INPUT+2MOV AL, [BX+1]CMP AL, 'q'JE EXITCMP AL, 'Q'JE EXITCALL NEWCALL BINARYPUSH AXMOV DX, OFFSET RESULTMOV AH, 09HINT 21HPOP AXCALL DISPHEXJMP READ
EXIT:MOV AH, 4CHINT 21HBINARY PROCPUSH BXPUSH SIPUSH CXPUSH DXMOV BX, 0MOV SI, DXMOV AH, 0MOV AL, [SI]SUB AX, 30HCMP AX, 9JA OVERERRCMP CX, 1HJE BINPROCESSMOV DX, 10DEC CX
LOOPFORBIN:INC SIMOV DX, 10MUL DXMOV BL, [SI]SUB BL, 30HCMP BL, 9JA OVERERRADD AX, BXLOOP LOOPFORBINJMP BINPROCESSOVERERR:POP DXPOP CXPUSH CXPUSH DXCALL COUNTCALL NEWMOV DX, OFFSET ERRORINFOMOV AH, 09HINT 21HPOP DXPOP CXPOP SIPOP BXJMP READ
BINPROCESS:POP DXPOP CXPOP SIPOP BXRET
BINARY ENDPCOUNT PROCPUSH AXPUSH BXPUSH CXPUSH DXMOV SI, DXMOV AX, 0
CHECK:MOV BL, [SI]INC SICMP BL, 30HJB NOTNUMCMP BL, 39HJA NOTNUMINC AX
NOTNUM:LOOP CHECKADD AX, 30HMOV DX, AXMOV AH, 02HINT 21HPOP DXPOP CXPOP BXPOP AXRET
COUNT ENDPDISPHEX PROCPUSH AXPUSH BXPUSH CXPUSH DXMOV BX, AXMOV CX, 4
L1:PUSH CXMOV CL, 4ROL BX, CLMOV DL, BLAND DL, 1111BADD DL, 30HCMP DL, 39HJBE DEALADD DL, 7
DEAL:MOV AH, 02HINT 21HPOP CXLOOP L1POP DXPOP CXPOP BXPOP AX
DISPHEX ENDPNEW  PROCPUSH AXPUSH DXMOV AH, 02HMOV DL, 0AHINT 21HMOV DL, 0DHINT 21HPOP DXPOP AXRET
NEW ENDPCODE ENDS
END START

实验结果

微原实验二 数码转换相关推荐

  1. 微原实验三 基本IO口扩展

    实验内容 本实验要求用74LS244作为输入口,读取开关状态,并将此状态通过74LS273连到发光二极管显示.具体实验内容如下: 1.开关Yi为低电平时对应的发光二极管亮,高电平时对应的发光二极管灭. ...

  2. c语言奇数正偶数负,微原软件实验:统计正负数、奇偶数的个数

    北邮微原软件实验二:分支,循环程序设计. 基于8086汇编.我在64位Win7下用DOSBox进行实验. 实验二 分支,循环程序设计 一.实验目的: 1.开始独立进行汇编语言程序设计; 2.掌握基本分 ...

  3. 计算机组成原理中FZ,计算机组成原理实验二.doc

    计算机组成原理实验二.doc 北京科技大学 计算机与通信工程学院 实 验 报 告 实验名称:?? 基本运算器实验 李奥林 ???? 专 业:??? 计算机科学与技 ? ? 班 级:??? 计1303? ...

  4. Arduino实验二十 数码管实验

    学习任务: 学会使用数码管 组件: Arduion主板 数码管 杜邦线 面包板 USB数据线 下图是数码管 实验步骤: 1.建立电路 Arduion 数码管 2 CLK 3 DIO 3.3v + GN ...

  5. 数字电子技术 实验二

    实验二 一.实验目的 进一步学习multisim仿真软件的操作 学会使用multisim对时序逻辑电路进行仿真分析 二.实验内容 验证JK触发器的逻辑功能 利用74LS160N的置数方式设计九进制计数 ...

  6. 操作系统实验二:物理内存管理系统

    操作系统实验二:物理内存管理系统 一. 实验目的 二. 实验内容 三. 实验准备 [实验概述] [关键数据结构] [执行流程] 四. 实验步骤 (一) 练习0:填写已有实验 (二) 练习1:实现 fi ...

  7. 【自动控制原理仿真实验】 控制系统仿真实验(实验二)

    控制系统仿真实验(实验二) 一.实验目的 二.实验简介 1.欧拉法 2.梯形法 3.四阶Runge-kutta法 4.离散相似法 保持器类型 三.实验过程 仿真时间及仿真步距的估计 1.整体离散法 2 ...

  8. 【通信原理】实验二 角度调制实验

    目录 实验二 角度调制实验 一.实验目的 二.实验原理: 1.角度调制 (1)角度调制 (1)频率调制(FM): (2)相位调制(PM) (3)单音调制FM与PM (4)非相干解调 2.MATLAB中 ...

  9. 哈工大计算机系统实验二——DataLab数据表示

    计算机系统实验二特别难,和上一届的实验不一样,没有学长的火炬,当时做的时候特别崩溃.幸好有一帮志同道合的伙伴们,一起慢慢把实验解决了. 把火炬传下去! 实验报告 实 验(二) 题     目 Data ...

最新文章

  1. 如何获取boss直聘搜索牛人被屏蔽的姓名
  2. 关于系统重装的一件小事
  3. Python的setuptools详解【2】find_packages()
  4. python异常值检测的方法_Python实现非正太分布的异常值检测方式
  5. [转]MyBatis的foreach语句详解
  6. IBASE category 设置为01的情况下 IBASE自动创建情况
  7. 海南计算机网络技术学校,三亚广播电视大学计算机网络技术专业_海南报名_网络教育计算机网络技术专业教学计划_中国教育在线...
  8. 2020-12-15通信原理
  9. 分智- 招聘,公司评论,晒工资,薪水
  10. fiddler运行原理_fiddler工作原理
  11. 汇编语言子程序设计 查找电话号码
  12. C++宠物商店管理系统
  13. Abaqus动力学分析基础
  14. EPC项目设计界面管理研究——以上海国际金融中心项目为例
  15. linux电子数码相册实验报告,电子相册实训报告.docx
  16. 什 么 是ECP、EPP ?
  17. 清北学堂 2017-10-06
  18. emby,jellyfin,kodi系列
  19. [21S01][1136] Column count doesn‘t match value count at row 1 报错分析
  20. 你真的知道flex: 1;是什么意思吗?

热门文章

  1. 根据epc和ra定位linux kernel panic或者应用程序的出错位置
  2. Leetcode Golang 77. Combinations.go
  3. 服务器cpu支持4通道什么意思,Intel 10nm服务器CPU曝光 LGA4189接口、八通道内存
  4. leecode--链表对折
  5. 《编译原理》-用例题理解-自底向上的语法分析,FIRSTVT,LASTVT集
  6. Servlet处理GET和POST请求
  7. linux启动一个进程吗,当你在Linux上启动一个进程时会发生什么?
  8. 条码打印软件如何使用Excel表批量打印条码标签
  9. 联想小新一键恢复小孔_联想小新笔记本如何一键恢复出厂设置_联想小新air恢复出厂设置教程...
  10. windows启动管理器_【指南】Windows操作技巧集合(欢迎在评论区补充)