文章目录
串操作
MOV SI,1000H
MOV DI,2000H
MOV CX,5H
CLD
REP MOVSB
计算:y=x3+x2+1,x=3,求y
DATA SEGMENT
X DB 3;更改x的值
Y DW ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV BL,X
MOV AL,X
MUL BL
MOV BL,X
ADD BL,1
MUL BL
ADD AX,1
MOV Y,AX
CODE ENDS
END START
不使用数据段
CODE SEGMENT
ASSUME CS:CODE
START:
MOV AL,2;更改2的值
MOV BL,AL
MUL BL
ADD BL,1
MUL BL
ADD AX,1
CODE ENDS
END START
求和
DATA SEGMENT
SUM DW ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV AX,0
MOV BX,2;奇数和将2改为1即可,全部的和改为1
MOV CX,50;全部和改为100
MOV DX,0
L1:
ADD AX,BX
ADD BX,2;全部和改为1
LOOP L1
MOV SUM,AX
MOV AH,4CH
INT 21H
CODE ENDS
END START
内存中有数据X,Y,判断变量X中的数是奇数还是偶数,如果X是奇数,则输出‘jishu’;X是偶数,则输出‘OUSHU’。
DATA SEGMENT
X DB 34
S1 DB 'jishu$'
S2 DB 'OUSHU$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV AL,X
SHR AL,1
JC L1
MOV AH,9
MOV DX,OFFSET S2
INT 21H
MOV AH,4CH
INT 21H
L1:
MOV AH,9
MOV DX,OFFSET S1
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START
调用子程序:输出图形
CODE SEGMENT
ASSUME CS:CODE
START:
CALL KONG
CALL XING
CALL CRLF
CALL XING
CALL KONG
CALL XING
MOV AH,4CH
INT 21H
XING PROC
MOV AH,2
MOV DX,'*'
INT 21H
RET
XING ENDP
KONG PROC
MOV AH,2
MOV DX,' '
INT 21H
RET
KONG ENDP
CRLF PROC
MOV AH,2
MOV DX,10
INT 21H
MOV DX,13
INT 21H
RET
CRLF ENDP
CODE ENDS
END START
X中有一个数,若是负数输出’FUSHU’,否则输出’FEIFUSHU’
DATA SEGMENT
X DB -9
S1 DB 'FUSHU$'
S2 DB 'FEIFUSHU$'
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV BL,0
MOV CL,X
CMP CL,BL
JS L1
MOV AH,9
MOV DX,OFFSET S2
INT 21H
MOV AH,4CH
INT 21H
L1:
MOV AH,9
MOV DX,OFFSET S1
INT 21H
MOV AH,4CH
INT 21H
CODE ENDS
END START
换码
-F 1000 1003 ‘abcd$’
MOV BX,1000
MOV AL,2
XLAT
结果 AL:63H
平方和:
DATA SEGMENT
X DB 1,4,8,9,16,25,36,49,64,81,100,21,144,169,196,225
Y DB ?
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV BX,OFFSET X
MOV AL,10
XLAT
MOV Y,AL
CODE ENDS
END START
大数加和:
DATA SEGMENT
X DB 31H,21H,13H,0
Y DB 21H,25H,32H,0
Z DB 4 DUP(?)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE,DS:DATA
START:
MOV AX,DATA
MOV DS,AX
MOV CX,4
MOV BX,OFFSET X
MOV SI,OFFSET Y
MOV DI,OFFSET Z
CLC
L1:
MOV AL,[BX]
ADC AL,[SI]
DAA
MOV [DI],AL
INC BX
INC SI
INC DI
LOOP L1
CODE ENDS
END START
将1放大20倍:
CODE SEGMENT
ASSUME CS:CODE
START:
MOV AL,1
MOV CL,4
MOV BL,AL
SHL BL,CL
MOV CL,2
SHL AL,CL
ADD AL,BL
CODE ENDS
END START