河北工业大学汇编语言实验设计
2009 FEC9 DEC CL 200B 75F8 JNZ 2005 200D F4 HLT
EXAM2-3
DATA SEGMENT
ATAD DB ?, 2AH, ?, 3DH, ?, ?, 20H, '$'
ATAD1 DB ?, 2AH, ?, 3DH, ?, ?, 0DH, 0AH, '$' DATA ENDS
STACK SEGMENT STACK DB 20H DUP(0) STACK ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA START:
MOV AX, DATA MOV DS, AX MOV CL, 09H MOV BL, 00H OKL:
MOV AL, 00H INC BL OK1:
INC AL PUSH AX CMP BL, AL JZ OK
MOV BH, AL MUL BL
MOV DI, OFFSET ATAD CALL OKP POP AX JMP OK1 OK:
MOV BH, AL MUL BL
MOV DI, OFFSET ATAD1 CALL OKP POP AX LOOP OKL MOV AH, 4CH
河北工业大学汇编语言实验设计
INT 21H OKP PROC PUSH AX PUSH BX PUSH CX
ADD BX, 3030H MOV [DI], BH
MOV [DI + 02H], BL MOV CX, 0AH MOV DH, 00H OKL2:
CMP AX, CX JS OK2
ADD CX, 0AH INC DH JMP OKL2 OK2:
SUB CX, 0AH SUB AX, CX MOV AH, DH ADD AX, 3030H MOV [DI + 04H], AH MOV [DI + 05H], AL MOV DX, DI MOV AH, 09H INT 21H POP CX POP BX POP AX RET OKP ENDP CODE ENDS END START
执行程序EXAM2-2·EXE,屏幕上显示结果: 1*1=01
1*2=02 2*2=04
1*3=03 2*3=06 3*3=09
1*4=04 2*4=08 3*4=12 4*4=16
1*5=05 2*5=10 3*5=15 4*5=20 5*5=25
1*6=06 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=07 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=08 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=09 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
河北工业大学汇编语言实验设计
EXAM2-4
CODES SEGMENT ASSUME CS:CODES START:
XOR BX,BX MOV DL,2AH MOV CX,9
LOP: PUSH CX INC BL MOV CL,BL MOV DL,2AH LOP2: MOV AH,02H INT 21H LOOP LOP2 POP CX
MOV DL,0AH MOV AH,02H INT 21H
MOV DL,0DH MOV AH,02H INT 21H CMP BL,9 JZ ENDPRO LOOP LOP ENDPRO:
MOV AH,4CH INT 21H CODES ENDS
END START
执行程序EXAM2-4·EXE,屏幕上显示结果: * ** *** **** ***** ****** ******* ******** *********
EXAM2-5
STACK SEGMENT STACK DB 1024 DUP(0) STACK ENDS DATA SEGMENT
河北工业大学汇编语言实验设计
BUF DW 0F101H,110DH,52H,100H,456H COUNT =($-BUF)/2
RESULT DW 4 DUP(?),'$' DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA,SS:STACK WDADD PROC PUSH DI MOV AX, 0 MOV DX, 0
MOV DI, OFFSET BUF NEXT2: ADD AX, [DI] JNC NEXT1 INC DX
NEXT1: ADD DI, 2 LOOP NEXT2 POP DI RET
WDADD ENDP SHOW PROC PUSH CX PUSH DI
MOV CX, 04H
MOV DI, OFFSET RESULT MOV BX, AX ADD DI, 07H
BBB: MOV AX, BX AND AX, 000FH CMP AL, 0AH JB QQQ
ADD AL, 07H
QQQ: ADD AL, 30H MOV [DI], AL DEC DI PUSH CX
MOV CL, 04 SHR BX, CL POP CX LOOP BBB
MOV CX, 0004H CCC: MOV AX, DX AND AX, 000FH CMP AL, 0AH JB DDD
河北工业大学汇编语言实验设计
ADD AL, 07H
DDD: ADD AL, 30H MOV [DI], AL DEC DI PUSH CX
MOV CL, 04H SHR DX, CL POP CX LOOP CCC POP DI POP CX RET
SHOW ENDP
BEGIN: MOV AX, DATA MOV DS, AX MOV CX, COUNT CALL WDADD CALL SHOW
MOV DX, OFFSET RESULT MOV AH, 09H INT 21H
MOV AH, 4CH INT 21H CODE ENDS END BEGIN
执行程序EXAM2-5·EXE,屏幕上显示结果: 000107B6
实验三 算术运算与代码转换程序设计
一、实验目的
1)掌握算术运算程序的设计方法。 2)掌握代码转换程序的设计方法。 3)进一步掌握各种程序结构。
4)熟练掌握和使用用DEBUG调试程序。
二、实验内容