文档详情

汇编上机实验报告心得体会.doc

发布:2016-06-05约1.93万字共27页下载文档
文本预览下载声明
汇编语言程序设计 第一次上机作业 1.从键盘上接受一个字符,找出他的前导字符和后继字符,按顺序显示这三个字符。 寄存器分配: AL:存输入值x DL:输出显示 流程图:如右图所示 DATA SEGMENT A DB 0 DATA ENDS STACK SEGMENT STACK DB 200 DUP(0) STACK ENDS CODE SEGMENT ASSUME DS:DATA,SS:STACK,CS:CODE S: MOV AX,DATA MOV DS,AX MOV AH,1 INT 21H INC AL MOV DL,AL MOV AH,2 INT 21H DEC AL MOV DL,AL MOV AH,2 INT 21H DEC AL MOV DL,AL MOV AH,2 INT 21H CODE ENDS END S 2.从键盘上输入一个数字字符,如不是,显示‘not odd’,否则显示‘odd’。 寄存器分配: AL:存输入值x DL:输出显示 流程图:如右图所示 程序代码如下: DATA SEGMENT A DB 0 BUF DB,NOT ODD$ EA DB,ODD$ DATA ENDS STACK SEGMENT STACK DB 200 DUP(0) STACK ENDS Y CODE SEGMENT ASSUME DS:DATA,SS:STACK,CS:CODE S: MOV AX,DATA N MOV DS,AX MOV AH,1 INT 21H Y CMP AL,0 JNGE B CMP AL,9 JGE B LEA DX,EA MOV AH,9 INT 21H JMP C B: LEA DX,BUF MOV AH,9 INT 21H C: MOV AH,4CH INT 21H CODE ENDS END S 第二次上机作业 1.将以H为首地址的字节存储区中的技能被3整除又能被13整除的无符号整数的个数(假定=9)显示出来;同时对应的显示它们分别对应的地址偏移量。(利用多种寻址方式做) DATA SEGMENT 寄存器分配:SI:存H的偏移地址 H DW 1,3,5,39,13,117,15,17,$ CX:计数 N =$-H DX:存余数 B DW 3 BX:循环计数 C DW 13 D DW 0 DATA ENDS STACK SEGMENT STACK DB 200 DUP(0) STACK ENDS CODE SEGMENT ASSUME CS:CODE,SS:STACK,DS:DATA BEGIN: MOV AX,DATA N MOV DS,AX MOV CX,0 Y MOV BX,N LEA SI,H N LOPA: MOV AX,SI DIV B MOV D,DX Y JNZ NEXT DIV C MOV D,DX JNZ NEXT MOV DL,[SI] MOV AH,2 INT 21H INC CX INC SI DEC DX JNZ LOPA N NEXT: INC SI DEC DX JNZ LOPA Y EXIT: MOV DL,CL MOV AH,2 INT 21H
显示全部
相似文档