8086补齐字符串代码
时间: 2023-08-24 18:08:19 浏览: 34
8086汇编语言中的补齐字符串代码可以参考下面的代码:
```assembly
DATA SEGMENT
STR1 DB "Hello", 0
STR2 DB "World", 0
STR3 DB 20 DUP(0)
DATA ENDS
CODE SEGMENT
ASSUME CS:CODE, DS:DATA
START:
MOV AX, DATA
MOV DS, AX
MOV SI, OFFSET STR1
MOV DI, OFFSET STR3
CALL STRCPY
MOV SI, OFFSET STR2
MOV DI, OFFSET STR3
CALL STRCAT
MOV AH, 09H
LEA DX, STR3
INT 21H
MOV AH, 4CH
INT 21H
STRCPY PROC
MOV CX, 0
MOV AL, [SI]
CMP AL, 0
JE STRCPY_EXIT
MOV [DI], AL
INC CX
INC SI
INC DI
JMP STRCPY
STRCPY_EXIT:
MOV [DI], 0
RET
STRCPY ENDP
STRCAT PROC
MOV CX, 0
STRCAT_LOOP:
MOV AL, [DI]
CMP AL, 0
JE STRCAT_FOUND
INC CX
INC DI
JMP STRCAT_LOOP
STRCAT_FOUND:
MOV CX, 0
STRCAT_LOOP2:
MOV AL, [SI]
CMP AL, 0
JE STRCAT_EXIT
MOV [DI], AL
INC CX
INC SI
INC DI
JMP STRCAT_LOOP2
STRCAT_EXIT:
MOV [DI], 0
RET
STRCAT ENDP
CODE ENDS
END START
```
此代码用到了两个过程,分别是 STRCPY 和 STRCAT,用于复制字符串和连接字符串。其中 STR3 是用于存放结果的字符串,长度为 20 个字节,可以根据需要进行修改。