8086汇编读入字符串并复制(不使用 movsb 指令)

Posted u25th_engineer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了8086汇编读入字符串并复制(不使用 movsb 指令)相关的知识,希望对你有一定的参考价值。


图 1 程序运行示意

getstr 	macro str
		mov ah,0ah
		lea dx,str
		int 21h
endm

printstr macro str
		mov ah,09h
		lea dx,str
		int 21h
endm

stack   segment stack
        db 512 dup(?)
stack   ends

data 	segment
        str1 db 80,80 dup('$')
        str2 db 80,80 dup('$')
        msg1 db 10,13,'enter the string :$'
        msg2 db 10,13,'the copied string is :$'
data 	ends
code segment
        assume cs:code,ds:data
start:
		mov ax, stack
		mov ss, ax
		mov ax,data
        mov ds,ax
        
        printstr msg1
        getstr str1
        lea si,str1+2
        lea di,str2+2
        
        mov cl,str1+1 ;for storing the length of the string
        mov ch,00h
lab1:   
		mov al,ds:byte ptr[si]
        mov ds:byte ptr[di],al
        inc di
        inc si  ;for going to the end of the string
        loop lab1
        
        printstr msg2
        printstr str2+2
              
        mov ax,4c00h
        int 21h
code ends
        end start

以上是关于8086汇编读入字符串并复制(不使用 movsb 指令)的主要内容,如果未能解决你的问题,请参考以下文章

8086汇编读入字符串并复制(不使用 movsb 指令)

8086汇编 rep 指令

8086汇编 rep 指令

在汇编语言编程中不使用字符串指令移动字符串 8086

8086汇编习题笔记

8086汇编语言 几个汇编程序