二进制到BCD的转换教学-ppt课件_第1页
二进制到BCD的转换教学-ppt课件_第2页
二进制到BCD的转换教学-ppt课件_第3页
二进制到BCD的转换教学-ppt课件_第4页
二进制到BCD的转换教学-ppt课件_第5页
已阅读5页,还剩24页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、二进制到二进制到BCD的转换的转换DATA SEGMENTBNUM DW 270FHASTR DB 5DUP?DATA ENDSCODE SEGMENT ASSUME CS:CODESTART PROC FARBEGIN: MOV AX,BNUM LEA BX,ASTR MOV DL,0AGA1:SUB AX,2710H JS NEXT1 INC DL JMP AGA1NEXT1:ADD AX,2710H ADD DL,30H MOV BX,DL INC BX MOV DL,0AGA2:SUB AX,03E8H JS NEXT2 INC DL JMP AGA2NEXT2:ADD AX,03E8

2、H ADD DL,30H MOV BX,DL INC BX MOV DL,0AGA3: SUB AX,0064H JS NEXT3 INC DL JMP AGA3NEXT3:ADD AX,0064H接上 ADD DL,30H MOV BX,DL INC BX MOV DL,0AGA4:SUB AX,000AH JS NEXT4 INC DL JMP AGA4NEXT4:ADD AX,000AH ADD DL,30H MOV BX,DL INC BX ADD AL,30H MOV BX,DL RETSTART ENDPCODE ENDS END BEGIN从二进制到从二进制到ASCII串的转换串

3、的转换设串设串1地址指针,设串长度地址指针,设串长度修正地址指针修正地址指针NY 取要转换的数取要转换的数 C=1? 左移左移1位位 前往前往 存入存入1 用用0填满串填满串完成否?完成否?YN 有关列和表的程序设计1、加1个项至1个无序列例3-19 缓冲区中有一无序列,列的长度放在缓冲区的第1个字节,要把内存某单元的1项参与到此列中。DATA SEGMENTBUF DB 10,abcdefghij DB ?KEY DB $DATA ENDSCODE SEGMENT ASSUME CS:COEDSTART PROC FARBEGIN: PUSH DS LEA DI,BUF MOV CH,0 M

4、OV CL,DI INC DI MOV AL,KEY REPNZ SCASB JE DONA MOV DI,AL INC BUFDONE:RETSTART ENDPCODE ENDS END BEGIN 从一个无序列中删去一个元素例3-20在内存缓冲区中有一个无序列,列的长度存放在第1个字节,另有一单元存放要删去的元素变量,查找此无序列,假设包含要删去的元素那么把它删去,并对列做相应的调整。DATA SEGMENTBUF DB 10,abcdefghijKEY DB fDATA ENDSCODE SEGMENT ASSUME CS:CODE,START PROC FARBEGIN: . LEA

5、 DI,BUF MOV CH,0 MOV CL,DI INC DI MOV AL,KEY REPNE SCASB JNE DONE DEC BUF SCHG SI,DI REP MOVSBDONE: RETSTART ENDPCODE ENDS END BEGIN3、找出无序列中的最大值和最小值例:有一无序列,列的长度放在第1字节。DATA SEGMENTBUF DB 10,22,-12MIN DB ?MAX DB ?DATA ENDSCODE SEGMENT ASSUME CS:CODE,START PROC FARBEGIN: LEA BX,BUF MOV CH,0 MOV CL,BX I

6、NC BX MOV AL,BX DEC CX MOV MIN,AL MOV MAX,AL INC BX DEC CXAGAIN:MOV AL,BX CMP AL,MIN JE NEXT JG A1 MOV MIN,AL JMP NEXTA1: CMP AL,MAX JL NEXT MOV MAX,ALNEXT: INC BX DEC CX JNE AGAIN RET.阅读程序DATA SEGMENTA DW 23,34.DATA ENDSPROG SEGMENTMAIN PROC FAR ASSUME CS:PROG,START:. MOV CX,N DEC CXLOOP1: MOV DI,C

7、X MOV BX,0LOOP2: MOV AX,ABX CMP AX,ABX+2 JGE COTI XCHG AX,ABX+2 MOV ABX,AXCOTI: ADD BX,2 LOOP LOOP2 MOV CX,DI LOOP LOOP1 RETMAIN ENDPPROG ENDS END START 串操作指令流程取源串地址取源串地址取目的串地址取目的串地址设串长度设串长度传送一个字节或字传送一个字节或字修正地址指针修正地址指针修正串长度值修正串长度值传送完否?传送完否?串比较指令例测试测试200个字节数据能否传送正确:个字节数据能否传送正确:LEA SI,MEM1LEA DI,MEM2M

8、OV CX,200CLD REPE CMPSB TEST CX,00FFH JZ STOP DEC SI MOV AL,SI MOV BX,SISTOP:HLT LEA指令在程序中的运用指令在程序中的运用 开开 始始取源地址取源地址取目的地址取目的地址送数据块长度到送数据块长度到CL传送一个字节传送一个字节修正地址指针修正地址指针修正计数值修正计数值计数值计数值=0? 结结 束束NYLEA指令在程序中的运用指令在程序中的运用 LEA SI,MEM1 LEA DI,MEM2 MOV CL,50NEXT: MOV AL,SI MOV DI,AL INC SI INC DI DEC CL JNZ N

9、EXT HLT 4.5.4 DOS4.5.4 DOS及及BIOS BIOS 功能调用功能调用DOS 功能调用功能调用 高级调用,操作系统提供高级调用,操作系统提供BIOS功能调用功能调用 低级调用低级调用1. DOS 模块和模块和BIOS 的关系的关系BIOS-外部设备管理软件,固化在主板的外部设备管理软件,固化在主板的ROM中。中。DOS-操作系统。包含操作系统。包含IBMBIO输入输出设输入输出设备处置程序,备处置程序,IBMDOS(文件管理及处置程文件管理及处置程序序),COMMAND命令处置程序命令处置程序2.2.中断调用及中断效力子程序前往中断调用及中断效力子程序前往3.DOS 3.

10、DOS 功能调用功能调用l包含多个子功能的功能包,用软中断指令包含多个子功能的功能包,用软中断指令INT 21H 调用,中断类型码固定为调用,中断类型码固定为21H;l各子功能采用功能号来区分。各子功能采用功能号来区分。附录附录CDOS DOS 功能调用功能调用设备管理设备管理目录管理目录管理文件管理文件管理其它其它调用格式:调用格式: MOV AH,功能号,功能号 ; INT 21H1 1前往前往DOSDOSl调用方法:调用方法:l MOV AH,4CH;功能号;功能号4CHl INT 21Hl2键盘输入并显示键盘输入并显示l MOV AH,1l INT 21H;从键盘输入一个字符保管在;从

11、键盘输入一个字符保管在AL中,并中,并在屏幕上显示。在屏幕上显示。单字符输入例GET_KEY: MOVGET_KEY: MOVAH,1AH,1 INT INT21H21H CMP CMPAL,Y AL,Y JZ JZ YESYES CMP CMPAL,N AL,N JZ JZ NONO JNZ JNZGET_KEYGET_KEY YES: YES: NO: NO: 交互式应交互式应 答程序答程序3 3键盘输入但不显示输入字符键盘输入但不显示输入字符lMOV AH,08Hl INT 21H;从键盘输入一字符,保管在;从键盘输入一字符,保管在AL中,中,但但l 不显示,用来设置口令。不显示,用来设

12、置口令。l4显示显示DL中的字符中的字符lMOV DL,AlMOV AH,02HlINT 21H单字符显示输出例l MOVAH,02l MOVDL,41Hl INT21H执行结果:执行结果:屏幕显示屏幕显示A从键盘输入字符串从键盘输入字符串lAH 功能号功能号OAHlDS:DX 字符串在内存中的存放地址字符串在内存中的存放地址lINT 21H P169例例定义字符缓冲区定义字符缓冲区l用户自定义缓冲区格式:用户自定义缓冲区格式:0DHN1N2整个缓冲区整个缓冲区最大键入字符数最大键入字符数实践键入字符数实践键入字符数输入字符串程序段l DAT1 DB 20,?,?,20 DUP?l LEA D

13、X,DAT1l MOV AH,0AHl INT 21H在数据段在数据段中定义中定义输入缓冲区14H ?20个字节个字节定义后的输入缓定义后的输入缓冲区初始形状:冲区初始形状: 字符串输出显示lAH 功能号功能号O9HlDS:DX 待输出字符串的偏移地址待输出字符串的偏移地址lINT 21Hl被显示的字符串必需以被显示的字符串必需以$终了终了,且所显示且所显示的内容不应出现非可见的的内容不应出现非可见的ASCII码码字符串输出显例如DATA SEGMENTMESS1 DB Input String: 0DH,0AH,$DATA ENDSCODE SEGMENT MOV AH,09MOV DX,OFFSET MESS1INT21H 终了用户程序前往DOS的方法l用用4CH功能功能 MOV AH,4CHl INT 21Hl用中断调用用中断调用20Hl INT 20Hl转移到转移到0单元单元 JMP 0l用用 00H功能功能 MOV AH,00l INT 21H4.BIOS4.BIOS功能调用功能调用l1设置显示方式设置显示方式 P171l2设置光标大小设置光标大小l MOV AH,1;功能号为;功能号为1l MOV CH,0;光标顶值;光标顶值0-11l MOV CL,12;光标底值;光标底值112l INT 10Hl3

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论