組合語言 加急 出來有加分

2025-01-25 20:45:16 字數 2552 閱讀 5259

1樓:水瓶座的小強

第二題。源,目標區沒有重疊。

mov ax,seg buf

mov ds,ax

mov ax,seg tab

mov es,ax

lea si,buf

lea di,tab

mov cx,200

cldrep movsw

源,目標有重疊。

mov cx,200

mov ax,seg buf

mov ds,ax

mov ax,seg tab

mov es,ax

lea si,buf

add si,cx

lea di,tab

add di,cx

stdrep movsw

第一題。data segment

table db 10h,feh,00h,abh,78h,99h,12h,30h,00h,46h

data ends

code segment

assume cs:code,ds,datastart:mov ax,data

mov ds,ax

mov bx,offset table

mov cx,10

mov dl,0 ;0的個數。

mov dh,0 ;負數個數。

mov ah,0 ;正數個數。

again:mov al,[bx]

cmp al,0

jz jishu0 ;等於0轉到統計0

shl al,1

jc jishu1 ;(c)=1轉到統計負數。

inc ah ;正數統計+1

inc bx

loop again

ajmp end1

jishu1:inc dh

inc bx

loop again

ajmp end1

jishu0:inc dl

inc bx

loop again

end1:mov ah,4ch

int 21h

code ends

end start

2樓:網友

帶符號數的編碼規則是什麼?原碼?增碼?0的處理會不一樣。

求設計乙個程式,加急!組合語言,今晚一定要完成!

3樓:網友

恩。偶不想動手。好久沒動了,是8086麼?

看上去很簡單啊,限制0~9就是限制讀取輸入字元是30h~39h之間的就行了,其他的不響應,按乙個讀乙個,然後相加,最後除個10,同時計數,並不複雜。

組合語言求答案

4樓:xiao鵪鶉

a……aa、bb中的資料當做無符號數相加後放到cc中b……(cc+4)=10h……(cc+3)=a8hc……lea cc(或者cc的位址)

d……不能,因為xor al,al 會改變標誌位cf為0,使後面的rcl失去本來的作用。

另外,您的**有幾處馬虎打錯字母了- -看得很費力啊t t

組合語言題目 高分!!!做出來加分!!!

5樓:網友

(5678h), bx= (5678h)

0048h)

15. 寫出下列程式段的功能 (假定資料段已定義為n db 89h)

mov al,n ;把n指向的記憶體數送入al 。-al=89h

and n,0fh ;把n指向的記憶體數與0fh進行邏輯與,實際結果為去該位元組高位;如n=89h,與後,該處為09h

mov bl,n ;把n指向的記憶體數送入bl。->bl=09h

shr al,4 ;al值移位4次。->al=08h

mov bh,al ;al值送入bh。->bh=08h

該程式段原想的功能是:把n指向的記憶體位元組數高4位送入bh,低4位送入bl。

但上面的程式無法編譯,難怪納蘭不會做。

shr al,4 這句是錯誤指令。

想實現以上功能,又能通過編譯的指令要改成這樣:

mov al,n

and byte ptr n,0fh

mov bl,n

mov cl,4

shr al,cl

mov bh,al

17. 已知,(ds)= 2000h,(bx)= 100h,(si)= 02h,從位址2010:0h開始,存放資料12h、34h、56h、78h;

從位址2120:0h開始,存放資料2ah、4ch、8bh、98h。

試說明下列各條指令單獨執行後ax暫存器的內容。

1) mov ax,3600h ->ax=3600h ;不知你的3066h是哪來的?

2) mov ax,[1200h] -ax=4c2ah ;ds:ip 2000h:1200h實體地址為21200h

3) mov ax,bx ->ax=100h

0c02dh)

6樓:網友

除了18題之外同意二樓的,18題我的答案是73h,能不能二樓的給乙個確定的答案?

組合語言程式設計的問題,組合語言程式設計問題

1.jmp bx 如果 bx 1020h,那麼 ip 1020h,因為此種形式為通過暫存器的段內間接轉移,執行時將把暫存器的內容直接送ip,所以執行此指令後ip的值為1020h 2.jmp tab bx si 如果 ds 2000h,bx 1020h,si 0002h,tab 0010h,21032...

組合語言編寫AT89C52,組合語言編寫AT89C

怎麼都是輸出?沒有輸入作依據,根據什麼輸出不同的值?把題目改為 p1.0口輸入為1,則p1.3口輸出為1,p1.0口輸入為0,則p1.3口輸出為0,p1.1口輸入為1,則p1.4口輸出為1,p1.1口輸入為0,則p1.4口輸出為0 程式 org 0000h mov c,p1.0 mov p1.3,c...

組合語言中si表示地址還是內容,組合語言中 SI 表示地址還是內容

si 是暫存器間接定址,它是指si中地址的內容,所以是具體內容,si是地址。在x86彙編中,中括號就相當於c語言的星號,即指標,mov x,地址 相當於x p一樣,是取內容。若mov si 100 則si代表 100 si 代表 地址為100的記憶體單元中的內容 記住,有的代表記憶體單元裡面 的內容...