比較兩個字串是否相等

2021-04-13 02:07:06 字數 1297 閱讀 6093

我剛剛才學了組合語言,就寫了乙個很簡單的程式.

下面是程式**

dseg segment

data1 db 9,0,9 dup(?)  

data2 db 9,0,9 dup(?)

cnt  db 8

str1 db 13,10,'two string is same. $'

str2 db 13,10,'two string is different. $'

str3 db 'input the first string: $'

str4 db 13,10,'input the second string: $'

dseg ends

cseg segment

assume cs: cseg, ds: dseg,es:dseg

start: mov ax,dseg

mov ds,ax

mov es,ax

lea dx,str3   ;顯示字串input the first string

mov ah,09h

int 21h

lea dx,data1  ;從鍵盤上輸入字元到緩衝區data1

mov ah,0ah

int 21h

lea si,data1+1  ;把data1的偏移位址送給si

mov ah,0ch   ;把緩衝區的字元清除

mov al,08h

int 21h

lea dx,str4   ;顯示字串input the second string

mov ah,09h

int 21h

lea dx,data2  ;從鍵盤上輸入字元到緩衝區data1

mov ah,0ah

int 21h

lea di,data2+1  ;把data2的偏移位址送給di

mov cl,cnt

again: inc si

inc di

mov al,[si]

cmp al,[di]   ;相等繼續比較

loopz again

jz  disp1

jmp disp2

disp2: lea dx,str2

mov ah,09h

int 21h

mov ah,4ch

int 21h

disp1: lea dx,str1

mov ah,09h

int 21h

mov ah,4ch

int 21h

cseg ends

end start

shell比較兩個字串是否相等

比較兩個字串是否相等的辦法是 if test x test x then 這裡的關鍵有幾點 1 使用單個等號 2 注意到等號兩邊各有乙個空格 這是unix shell的要求 3 注意到 test x最後的x,這是特意安排的,因為當 test為空的時候,上面的表示式就變成了x testx,顯然是不相等...

shell比較兩個字串是否相等

比較兩個字串是否相等的辦法是 if test x test x then 這裡的關鍵有幾點 1 使用單個等號 2 注意到等號兩邊各有乙個空格 這是unix shell的要求 3 注意到 test x最後的x,這是特意安排的,因為當 test為空的時候,上面的表示式就變成了x testx,顯然是不相等...

shell比較兩個字串是否相等

比較兩個字串是否相等的辦法是 if test x test x then 這裡的關鍵有幾點 1 使用單個等號 2 注意到等號兩邊各有乙個空格 這是unix shell的要求 3 注意到 test x最後的x,這是特意安排的,因為當 test為空的時候,上面的表示式就變成了x testx,顯然是不相等...