組合語言 練習題5 2

2021-09-16 22:06:02 字數 1321 閱讀 3701

將從鍵盤輸入的n

個有符號數儲存到陣列

tab,找出

n個有符號數中絕對值大於

x的最小負奇數存放到

min單元,如果沒有找到則

min單元存放

0。在終端上顯示

min的絕對值。

tab  dd   x1,……,xn

x       dd   xx(

無符號數,自己設定)

min    dd   ?

要求:1、求資料

min的功能用子程式實現 2

、畫主程式及子程式流程圖 3

、熟練掌握綜合程式設計方法

流程圖:

neg x ;取反

mov ecx,cnt

xor esi,esi

again:

mov eax,tab[esi*4]

cmp eax,min

jge next

;是負數且小於min,判斷絕對值是否大於x

cmp eax,x

jge next

mov y,eax

neg eax

xor edx,edx

div two

cmp dx,0

je next

mov eax,y

mov min,eax

next:

inc esi

loop again

mov eax,min

call writeint

call crlf

exit

print proc

xor esi,esi

print_again:

call readint

mov tab[esi*4],eax

inc esi

loop print_again

retprint endp

end start

組合語言 練習題4 2

內容 從鍵盤輸入一串字母並儲存在 string 開始的位址單元,要求將該字串中的大寫字母轉化為小寫字母後用子程式實現在終端上依次顯示該串字母的 ascii碼。string db n dup 要求 熟練掌握子程式設計方法,畫子程式 主程式流程圖 函式說明 readstring edx 存放字串首位址 ...

組合語言 練習題3 2

內容 tab開始的單元中存放 n個位元組無符號數,請按照從大到小排序後,存入 dat單元中。注意 tab 資料保持不變 tab db x1,xn dat db n dup 要求 熟練掌握迴圈程式設計方法 這個屬於非就地排序,我利用的是冒泡的思想 每增加乙個值,冒泡一遍。附上c bubblesort....

movsw 彙編 彙編練習題

16.下面指令執行後,總是使cf of 0的是 a.and b.neg c.not d.inc 17.為使cx 1時,執行 jz minus 轉至標號minus而編制了一指令,其中錯誤的是 a.inc cx b.sub cx,offffh c.and cx,offffh d.xor cx,offff...