彙編之輸出輸入的字串

2021-10-12 07:31:26 字數 977 閱讀 9503

assume cs:code,ds:data		# 宣告

data segment

char1 db 11,0,11 dup(0)

# 11,0,11 三個數的意義是限制輸入的字元個數,

# 實際輸入的個數和限制輸出的字元個數

char2 db 0ah,0dh,'$'

# char2內的內容分別是回車0ah,換行0dh,$符

data ends

code segment

start: mov ax,data # 將data內的值裝入暫存器ax中

mov ds,ax

mov dx,offset char1

# 將串內的位址裝入dx

mov ah,0ah # 0ah命令,接收字串

int 21h

lea dx,char2 # 將char2的字串位址指給dx

mov ah,9 # 9命令,輸出char2字串

int 21h

mov bl,char1[1]

# 將char1[1]中的輸入的字串的個數賦給bl

mov bh,0 # 將0賦給bh,保證bx內的值等於bl

mov char1[bx+2],'$'

# 此處的bx+2的值可以看成2+bx,因為2是char1[2]的首位址,其中bx則是上面賦值的bl值,

# 即輸入的字串個數,所以此處**的實際目的是將$符賦給char1[2]輸出部分的最後位置,

# 其中的$符在下面即將執行的**中起到的作用是作為輸出終止作用

lea dx,char1[2]

# lea指令將char1的[2]的首位址指向給dx

int 21h

mov ah,4ch # 結束**

int 21h

code ends

end start

任課老師:胡海芝

字串的輸入輸出 彙編

彙編之字串的輸入輸出 一直只是認為知道彙編是怎麼一回事,沒真正的好好寫過,現在再來好好了解一點 datas segment ent db 13,10,用於輸出回車符 s size db 100 輸入字串的最大長度 s len db 實際輸入字元的長度 string db 101 dup datas ...

彙編實現字串輸入並倒序輸出

1 int 21h的1號功能進行字元輸入。datas segment maxl db 30 定義字串大小做計數 rlen db 儲存實際長度 str1 db 30h dup 分配記憶體空間 datas ends stacks segment dw 60hdup 分配堆疊空間 top label wo...

字元 字串的輸入輸出

字元與字串的輸入輸出 如果要使用現成的字串函式和方法,就一定要加上對應的標頭檔案,如果在c 當中呢,就是 include 如果是在c當中呢,就是 include 4.1字元,字串的輸入輸出 char c 字元的輸入輸出 scanf c c printf c c 接收單個字元 字串的輸入輸出 char...