組合語言將資料段中的字串傳送到附加段中,然後將附加段中的字串輸出到螢幕上。求填空

2022-03-14 01:06:12 字數 984 閱讀 6442

1樓:做而論道

僅用兩句傳送指令,即可。

……mov cx, len

next:

mov al, ds[si] ; ① ;開始傳輸資料mov es[di], al ; ②inc si

……程式中,已經給出了 inc si、inc di,所以就不能用串傳送指令。

否則,就重複加一了。

組合語言題目,字串的合併

2樓:匿名使用者

data segment

data1 db 'cde'

data2 db 'abcd'

data ends

esdata segment

data3 db 7 dup(?)

esdata ends

code segment

assume cs:code,ds:data,es:esdatastart:mov ax,data ;送段地址mov ds,ax

mov ax,esdata

mov es,ax

mov si,offset data1 ;取變數的偏移量mov bx,offset data2

mov di,offset data3

mov cx,4 ;把abcd送到data3前4個單元

loop1:mov al,[bx]

mov es:[di],al

inc bx

inc di

loop loop1

mov cx,3 ;把cde送到data3後3個單元loop2:mov al,[si]

mov es:[di],al

inc si

inc di

loop loop2

mov ah,4ch ;退出

int 21h

code ends

end start

字串中的空格,C語言字串中的空格算不算一個字元

copy這個函式,如果 s i 為 0 則退出迴圈是吧,那迴圈到hello和world中間那個空格那裡,那個空格難道不是 0 麼?如果是 0 為什麼還要繼續迴圈呢?你的疑問 空格ascii 碼是32,而 0 ascii 碼是0.字串的末尾胡 0 是自動加上去的,所以 0 和字元0又不一樣了,0的as...

用C語言,編寫名為fun的函式將字串中所有的大寫字母換成小寫字母 高手來

include include void fun char a,int size void main include include void fun char ch int main 任意字串長度都行的,上面的卻是固定的 無用動態內指標 include void fun char q void m...

C語言入門問題為什麼我已經將字串c的結尾加上了0,後面還是會出現奇怪的東西

因為來你是一個一個地輸出數 源組的所有元素,包含bai沒有初du始化的元素zhi,所以會有奇怪dao符號出現。你可以把 char a 10 b 10 c 10 這個宣告,放到 int main 之前宣告,編譯器就會處理它們為全域性量,並初始化,情況就會改善。另外,0 是字串結尾符。你按 s 輸出字串...