广石化微机原理进制转换.doc
《广石化微机原理进制转换.doc》由会员分享,可在线阅读,更多相关《广石化微机原理进制转换.doc(9页珍藏版)》请在课桌文档上搜索。
1、【修正后的程序】虽篇幅较长,但每段功能都有说明,思路清晰。请耐心阅读。注:程序中有详细注释且执行时有屡次循环,故不单步截图。调试操作才有截图。DATA SEGMENT ORG 0000HRES DB 5 DUP(?) ;存储个十百千万的权重数值SFG DB 0 ;符号判断变量,负数为1 ORG 0100H ;以下为显示字串的存储MESG1 DB Please enter a hexadecimal number of 4 bits .,0AH,0DH,$ ORG 0200HMESG3 DB The number is:,0AH,0DH,$MESG4 DB The decimal form of
2、 the number is:,0AH,0DH,$MESG5 DB confirm(y/n)?,0AH,0DH,$ ORG 0300HBUF1 DB 30,?,30 DUP(?) ;键面值转化为ASCII码存放的缓存单元 ORG 0400HBUF2 DB 30,?,30 DUP(?) ;四个字节分两组,移4位加法组成两个字节存放 ORG 0500HNUB DW 8001H ;两个字节移8位加法合成一个字QU DW 10000,1000,100,10,1 ;存放合并了的数,跟键面组合输入一样N DB 5DATA ENDSCODE SEGMENT ASSUME CS:CODE,DS:DATABEG
3、: MOV AX,DATA MOV DS,AX CLC;*;*;交互界面,输出的十进制数X围-3276732767 五位数N=5;*;*AGAIN: MOV DX,OFFSET MESG1 ;显示1 Please enter . MOV AH,9 INT 21H MOV AH,0AH ;键盘输入数值存入BUF1缓冲区在0300H MOV DX,OFFSET BUF1 INT 21H CMP BUF1+1,4 ;只输入四个数,否如此重新输入 JNE AGAIN MOV AH,09H ;显示3 The number . MOV DX,OFFSET MESG3 INT 21H MOV BL,BUF1
4、+1 ;给BUF1缓冲区输入的字符末尾加“$完毕符 MOV BH,0 MOV SI,OFFSET BUF1+2 MOV CL,$ MOV BX+SI,CL MOV AH,09H ;显示键盘输入的数值 MOV DX,OFFSET BUF1+2 INT 21H MOV AH,2 ;显示换行 MOV DL,0AH INT 21H MOV AH,09H ;显示“Confirm(y/n)? MOV DX,OFFSET MESG5 INT 21H MOV AH,01H ;键盘输入单字符“y或“n INT 21H CMP AL,y JNE AGAIN MOV AH,2 ;显示换行 MOV DL,0AH IN
5、T 21H;*;*;BUF1缓存的ASCII码转换成数字,如“1在缓存是31H转换为1;*;*CLDCLCLEA SI,BUF1+2 ;BUF1单元中开头已经定义了30,?,30 DUP? ;?所在单元数值在输入回车之后装入输入的个数 ;故真正用来存储ASCII码单元是BUF1的三个单元MOV CL,4 ;装入处理个数的值以循环,这里为4。INXCH : LODSBCMP AL,41H ;比拟A=41H是数字还是字母JNC MU ;CF=0如此高于等于41H可能为字母 ;执行到这里【AL30H 数字】JMP AGAINSHU: SUB AL,30H ;ASCII码变为数字JMP CC ;跳到存
6、储指令CC: MOV SI-1,AL ;取串指令,SI自增。要保存到原来的单元 MOV CH,0 ;调试时CX高位出现异常,保证循环4次 LOOP INXCH JMP CHULI1 ;ASCLL码转换成键面字完毕,转到处理。 ;执行到这里的输入值【41H】 MU: CMP AL,47H ;46H为F。47H为G,大于等于不为大写字母JNC XIAO ;大于等于47H,可能为小写字母跳转SUB AL,55 ;小于47H为大写字母,化为相应的权值JMP CC ;亦即输入值在 【47HAL41H 大写字母】 ;执行到这里的输入值【47H】XIAO: CMP AL,67H ;比拟【67H=g】JNC
7、AGAIN ;大于等于67H不要,【重新输入CMP AL,61H ;【AL61H 小写字母】JMP AGAIN ;小于61H不要,【重新输入MX: SUB AL,87 ;化为小写字母相应的权值存储JMP CC;*;*;处理四位分两组组合,假如是3H,AH,4H,BH;有3H移4位加AH,4H移4位加BH;变成 3AH和4BH;*;*CHULI1: LEA SI,BUF1+2 ;BUF1单元中开头已经定义了30,?,30 DUP? ;?所在单元数值在输入回车之后装入输入的个数 ;故真正用来存储ASCII码单元是BUF1的三个单元LEA DI,BUF2+2 ;这里只是一般的存储区,不是缓冲区,没有
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 石化 微机 原理 转换

链接地址:https://www.desk33.com/p-10299.html