- 4
- 0
- 约2万字
- 约 159页
- 2018-02-07 发布于河南
- 举报
第2章8086微处理器与汇编语言(下)
第二章微处理器与汇编语言(下) 三、指令系统 四、汇编语言 五、汇编语言程序设计 完整的汇编语言程序: DATASEG SEGMENT X DW 3 Y DW ? DATASEG ENDS CODESEG SEGMENT ASSUME CS:CODESEG, DS:DATASEG START: MOV AX, DATASEG MOV DS, AX . . . MOV AH, 4CH INT 21H CODESEG ENDS END START DATASEG SEGMENT X DW 3 Y DW ? DATASEG ENDS CODESEG SEGMENT ASSUME CS:CODESEG, DS:DATASEG START PROC FAR PUSH DS XOR AX, AX PUSH AX MOV AX, DATASEG MOV DS, AX . . . RET 六、系统功能调用 七、宏指令、条件汇编及上机过程 八、模块化程序设计与混合编程 (2)键盘I/O中断调用(16H) 中断类型号为16H,用指令INT 16H调用。 ① (AH)=0 从键盘读一个字符到AL中,为ASCII码。 ② (AH)=1 从键盘缓冲区读字符到AL中,按任一键,ZF为“0”;否则,置ZF为“1”。 ③ (AH)=2 读取特殊功能键的状态,AL中为各特殊功能键的状态。 (3)打印机I/O中断调用(17H) 中断类型号为17H,用指令INT 17H调用。规定打印机号在DX中,编号分别是0、1、2。 ①(AH)=0 将AL中的字符在打印机上打印。入口参数:(AH)=0,(DX)=打印机号,(AL)=字符ASCⅡ码。出口参数:AH为打印机状态信息。 ② (AH)=1 对打印机初始化。入口参数:(AH)=1,(DX)=打印机号,(AL)=初始化命令码。出口参数:AH为打印机状态信息。 3. 循环程序设计 (2)循环程序的基本结构形式 ① “先执行、后判断”结构(DO~WHILE) ② “先判断、后执行”结构 (WHILE, FOR) (3)循环控制方法 ① 用计数控制循环 只要编制程序时,循环次数已知,就可以使用这种循环方法设计程序。 3. 循环程序设计 例:将16位带符号的二进制数转换成十进 制数,并将十进制数的ASCII码存入存储器字 节单元中。 首先分析题意,确定本题的解题步骤是: 首先处理符号;其次将二进制数转换成十进制 数;最后把BCD码变成ASCII数字。 设: 二进制数送AX 十进制数10000,1000, 100,10,1顺序存放到内存COUNT 开始的单元中。 所求的十进制数的ASCII码数字存放到BUF内存开始的单元。 程序流程图,如图2-5-11所示。源程序如下: DATA SEGMENT COUNT DW 10000,1000,100,10,1 BINARY DW 7FFFH BUF DB 6 DUP(?) DATA ENDS STACK SEGMENT STACK DB 256 DUP(?) STACK ENDS CODE SEGMENT ASSUME CS:CODE,DS:DATA START:MOV AX,DATA MOV DS,AX MOV AX,BINARY OR AX,AX JNS PLUS NEG AX MOV BUF,‘–’ JMP SHORT,CUD PLUS:MOV BUF,‘+’ CUD:MOV SI,1 MOV CX,5 MOV BX,OFF
原创力文档

文档评论(0)