組合語言問題,求大神解疑LEA SI,BLOCK MOV CX,,CX等於多少啊

2021-03-27 08:41:32 字數 3532 閱讀 5781

1樓:匿名使用者

塊的第一個位元組後面的/>程式的各種要素的數目的元素,發現在該塊中的各個元素中最小的,其結果的結果

組合語言的一些問題,在下面這段**中 start:lea si,block mov ch,0 mov cl,[si] 是什麼意思啊

2樓:匿名使用者

block 第一個位元組是 元素的個數,後面的是各個元素

程式查詢 block各個元素中最小的一個,把結果放在result 中

組合語言問題:**如下,請問錯誤在哪

3樓:做而論道

num db 30h--位元組變數,8位

....

lea si num

mov [si],cx--存入了 16 位數

求大神詳細解釋每一句組合語言的意思 l1: push cx mov cx,300 l

4樓:匿名使用者

l1: push cx ;cx的值壓入堆疊儲存,它的數值表示總共畫多少行

mov cx,300 ;cx=300,意思是迴圈300次,在螢幕上每行畫出300個點

l2:mov ah,0ch ;ah=0ch,int10h的0c號功能是寫一個畫素點

mov al,12 ;al=12 ,表示顏色

int 10h ;呼叫中斷 int 10h 寫一個畫素點

loop l2 ;迴圈,共畫cx=300個點

pop cx ;從堆疊中彈出cx

inc dx ;cx加一 ,換行,每行再畫300個點

loop l1; ;迴圈

組合語言題目,執行mov cx,length buf之後cx=?原碼如下

5樓:匿名使用者

求buf變數的長度,單位位元組。

count變數值為15h,21d。

dw是定義單字的意思。*21*2=252位元組

6樓:匿名使用者

在編譯器裡試了一下,就等於15h。

彙編指令lea的問題,lea si,1000h;什麼意思?

7樓:匿名使用者

lea是去偏移地址lea reg,mem

所以lea si,1000h立即數錯誤

mov si,1000h;si=1000hlea si,[1000h];si=1000hmov si,[1000h];取存放在1000h的內容也就是第一個數內

根據你的意容思,mov si,1000h正確mov di,2000h

mov cx,100

rep movsb

組合語言 lea 是什麼意思? 100

8樓:哇哎西西

lea是微機8086/8088系列的一條bai指令,取自du

英語load effective address——取zhi有效地址,也就是取偏dao移地回址。

lea指令將儲存器操答作數mem的4位16進位制偏移地址送到指定的暫存器。這裡,源運算元必須是儲存器運算元,目標運算元必須是16位通用暫存器。

因該暫存器常用來作為地址指標,故在此最好選用四個間址暫存器bx,bp,si,di之一。

9樓:潮潮

lea指令的功能是將

bai源運算元、即儲存du單元的有效地址(zhi偏移dao地址)傳送到目的運算元。專lea有兩個屬運算元:

1、左邊是目的運算元,表示操作結果儲存在此,該指令目的運算元只能是8個通用暫存器之一。

2、右邊的是源運算元,該指令的源運算元只能是一個儲存單元,表達儲存單元有多種定址方式。

示例:lea bx,[bx+si+0f54h][bx+si+0f54h]採用相對基址變址的定址方式表達儲存單元,它表示的儲存單元的有效地址是:bx內容加si內容加0f54h,這個結果被傳送到bx中。

10樓:匿名使用者

lea指令的功能是將源運算元、即儲存單元的有效地址(偏移地址)傳送到目的版運算元。

權lea有兩個運算元。

左邊是目的運算元,表示操作結果儲存在此,該指令目的運算元只能是8個通用暫存器之一。

右邊的是源運算元,該指令的源運算元只能是一個儲存單元,表達儲存單元有多種定址方式。

示例:lea bx,[bx+si+0f54h]

[bx+si+0f54h]採用相對基址變址的定址方式表達儲存單元,它表示的儲存單元的有效地址是:bx內容加si內容加0f54h。這個結果被傳送到bx中。

11樓:匿名使用者

lea是取變數的地址

lea另一用途就是代替乘法運算,比如lea eax,[eax*4+eax]就要比用mul去實現eax*5來得快捷

組合語言指令錯誤糾正

12樓:鯤鵬展翅

1 mov cx,dl;資料型別不匹配,cx為16位,dl為8位

2 mov ip,ax ;ip為能在指令中出現,它是下一條要執行指令的偏

636f707962616964757a686964616f31333234323632移地址,不允許指令對其進行改變

3 mov es,1234h ;立即數1234h不能直接送段暫存器

4 mov es,ds ;段暫存器之間不能直接傳送資料

5 mov al,300 ;資料型別不匹配,300超過一個位元組,無符號位元組最大數為255

6 mov [sp],ax ;sp為堆疊指標,對棧頂元素操作應該用push指令,而不能使用mov指令

7 mov ax,bx+di ;應該改為mov ax,[bx+di]

8 mov 20h,ah ;目的操作不能為立即數

9 xchg [si],30h ;交換指令的兩個運算元均不能為立即數

10 pop cs ;cs不能作為目的運算元,也就是說不能通過指令直接改變cs的值

11 sub [si],[di] ;兩記憶體單元不能直接進行減法操作

12 push ah ;堆疊操作以字為單元

13 adc ax,ds ;加法指令的運算元不能為段暫存器

14 add [si],80h ;沒有指定記憶體單元的資料型別,應該改為add byte ptr [si],80h

15 in al,3fch;外設埠地址超過8位時應該用dx,應該改為 mov dx,3fch in al,dx

16 out dx,ah ;輸入/輸出指令為累加器專用指令,8位累加器為al而不是ah。

有朋友會這道程式設計題嗎,用組合語言啊。。跪求答案啊。。。設在資料段中以block為首地址的儲存區域中存... 20

13樓:匿名使用者

交話費的何潤東還能有頭髮

組合語言初級問題

1 push 是表示壓棧,也就是把一些以後要用到的數暫時的儲存起來也騰出暫存器或者是記憶體用於其他的操作,它什麼時候入棧,就看你現在用的空間是不是馬上要用到了,那就先存起來然後在用完之後又把數恢復。這樣的用法在呼叫子程式時候用的最多。比如bx,ax在子程式中用到,那在進入子程式之前就先把bx,ax壓...

組合語言編譯時出現如下問題,求大神告知怎麼破

第一沒有定義入口地址需要加org 0000h 第二,end要放在程式的末尾,不然end之後的程式段就沒有意義了。把第三行end刪掉,並且放到最後一行就ok 什麼是彙編和組合語言?彙編語copy言是一種低階計算bai機程式語言,說 低階du 並不是指語言的功能和複雜程度,而是它zhi出現在計算機發展史...

組合語言程式設計高起專求大神幫助

1.a 2.c 3.d 4.b 組合語言程式設計 高起專 求大神幫助 35.單選題 mov al,12h add al,0ffh 上述兩條指令執行後,cf和of的值為內 本題2.0分 a cf 1 of 0 36.單選題 在組合語言程 容序設計中,偽指令offset的含義是回送變數或標號的 本題2....