博主是個大笨比,只會阿巴阿巴阿巴
編寫彙編源程式,求出首位址為buf的10個有符號字的內容之和,並存入字變數sum單元
2.10個有符號字的和
3.存入自變數sum單元
命令
指令lea
將源運算元的有效位址傳入暫存器
offset
返回變數或標號在段內的位址偏移量
xlat
bx 存表的首位址,al存記憶體偏移量,執行xlat後,以暫存器ds的內容為段基址,以bx+al 為偏移位址,在表中取乙個位元組送入al
中
data segment
buf dw 1,2
,3,4
,5,6
,7,8
,9,0
sum dw ?
data ends
stack segment
stack ends
code segment
assume cs:code,ds:data,ss:stack
start:
mov ax,data
mov ds,ax
;======
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
==;與下面的lea等價的寫法
;mov bx,offset buf
lea bx,buf;取出buf的有效偏移位址
mov cx,
10;賦值cx為10(迴圈次數為10)
mov ax,
0;清空ax暫存器
loop_to_add:
add ax,
[bx]
;暫存器間接定址,找到buf的首位址
add bx,
2;bx +
2 向後尋找下乙個數字
loop loop_to_add
mov sum,ax
;======
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
== mov ah,
4ch int 21h
code ends
end start
data segment
buf dw 1,2
,3,4
,5,6
,7,8
,9,0
sum dw ?
data ends
stack segment
stack ends
code segment
assume cs:code,ds:data,ss:stack
start:
mov ax,data
mov ds,ax
;======
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
==;與下面的lea等價的寫法
;mov bx,offset buf
lea bx,buf;取出buf的有效偏移位址
mov cx,
10;賦值cx為10(迴圈次數為10)
mov al,
0;清空ax暫存器的低8位
mov dx,
0;清空dx暫存器
loop_to_add:
xlat
add dl,al ;通過查表指令xlat可知取出的內容存在al中
add bx,
2;bx +
2 向後尋找下乙個數字
mov al,
0;讓bx偏移就夠了
loop loop_to_add
mov sum,dx
;======
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
====
== mov ah,
4ch int 21h
code ends
end start
如有錯誤,請指正,萬分感激 每天一道演算法題
no.1 棧是特殊的線性表,它。a.對 b.錯答案 錯,它的插入和刪除都是在同一端進行的。no.2 n個葉子節點的滿二叉樹 除了葉子節點,每個節點都有兩個孩子 總共有多少個節點?a.2n 1 b.2n c.n 1 d.n答案 a 滿二叉樹我們講過了,度為0的節點比度為2的加點多乙個。滿二叉樹是特殊的...
每天一道Linux題
1 為了檢視不斷更新的日誌檔案,可以使用的指令是 a.cat n b.vi c.more d.tail f 答案 這道題沒什麼好說的,使用tail f可以看到實時更新的日誌檔案,選d.2 檔案exer1的訪問許可權為rw r r 現要增加所有使用者的執行許可權和同組使用者的寫許可權,下列哪個命令是對...
每天一道演算法題
1.給定乙個只包括 的字串,判斷字串是否匹配。有效字串需滿足 左括號必須用相同型別的右括號閉合。左括號必須以正確的順序閉合。注意空字串可被認為是有效字串。思路 正確思路 不需要考慮輸入內容是否合法,這只是做題,不是工程 定義乙個字典,後括號為鍵,前半部分為值 定義乙個元素儲存棧頂,注意這個設定,取棧...