lab1核心代码

 

比较两个字符串STRINGlSTRING2所含的字符是否相同。若相同,则显示'Match';否则,显示'No match'

 1 DATA SEGMENT
 2 STRING1 DB 'Move the cursor backward.'
 3 STRING2 DB 'Move the cursor backward.'
 4 
 5 MESS1 DB 'Match.',13,10,'$'
 6 MESS2 DB 'NO Match!',13,10,'$'
 7 DATA ENDS
 8 
 9 PROG SEGMENT
10     ASSUME CS:PROG,DS:DATA,ES:DATA
11 START:
12     MOV AX,DATA
13     MOV DS,AX
14     MOV ES,AX
15     LEA SI,STRING1
16     LEA DI,STRING2
17     CLD
18     MOV CX,25   ;或者MOV CX, STRING2-STRING1
19     REPZ CMPSB
20     JZ MATCH
21     LEA DX,MESS2
22     JMP DISP
23 MATCH:
24     LEA DX,MESS1
25 DISP:
26     MOV AH, 09
27     INT 21H    
28 MOV AH,4CH
29 INT 21H
30 PROG ENDS
31 END START

 

从键盘接收一个四位的16进制数,在终端上显示与它等值的二进制数

 1 CODE SEGMENT
 2    ASSUME CS:CODE
 3 Begin: 
 4        MOV BX,0  ;用于存放四位的16进制数
 5        MOV CH,4
 6        MOV CL,4
 7 INPUT:
 8        SHL BX,CL ;将前面输入的数左移4位
 9        MOV AH,1  ;从键盘取数
10        INT 21
11        CMP AL,30 ;<0吗?
12        JB INPUT   ;不是"0~F"的数重新输入
13        CMP AL,39 ; 是"0~9"吗?
14        JA AF      ;不是,转"A~F"的处理 
15        AND AL,0F   ;转换为:0000B~1001B 
16        JMP BINARY
17 AF:   
18        AND AL,DF   ;首先转换为大写字母,或减20H
19        ;A~F判断
20        COM AL,41
21        JB INPUT
22        COM AL,39
23        JA AF
24        AND AL,0F
25        JMP BINARY
26 BINARY:
27        OR BL,AL   ;将键盘输入的数进行组合
28        DEC CH
29        JNZ INPUT
30 NEXT:
31        MOV CX,16  ;将16位二进制数一位位地转换成ASCII码显示
32 DISP:
33        MOV DL,0
34         ROL BX,1
35         RCL DL,1
36         OR DL,30
37         MOV AH,2   ;进行显示
38         INT 21
39         LOOP DISP
40   STOP:
41         MOV AH, 4C
42         INT 21
43 CODE ENDS
44    END Begin

 

实现(W(X×Y+Z540))X,将计算结果的商存人AX寄存器中,余数存人DX寄存器

 1 -E 0000 01 00 02 00 1C 02 00 00 1C 02 64 00  
 2 -A 100
 3 MOV AX,[0000]
 4 MOV BX,[0002]
 5 IMUL BX    X*Y
 6 MOV CX,AX
 7 MOV BX,DX
 8 MOV AX,[0004]
 9 CWD
10 ADD CX,AX    X*Y+Z
11 ADC BX,DX
12 SUB CX,[0008]    X*Y+Z-540
13 SBB DX,[0006]
14 MOV AX,[0010]
15 CWD
16 SUB AX,CX    W-(X*Y+Z-540)
17 SBB DX,BX
18 MOV BX,[0000]
19 IDIV BX      AX,DX
20 -G=100 DE

 

posted @ 2021-12-01 11:35  satellite&  阅读(107)  评论(0)    收藏  举报