史萊姆論壇

返回   史萊姆論壇 > 專業主討論區 > 程式語言討論區
忘記密碼?
論壇說明

歡迎您來到『史萊姆論壇』 ^___^

您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的!

請點擊這裡:『註冊成為我們的一份子!』

Google 提供的廣告


發文 回覆
 
主題工具 顯示模式
舊 2005-12-29, 02:34 AM   #1
kinco
註冊會員
榮譽勳章
UID - 248756
在線等級: 級別:8 | 在線時長:113小時 | 升級還需:4小時級別:8 | 在線時長:113小時 | 升級還需:4小時級別:8 | 在線時長:113小時 | 升級還需:4小時
註冊日期: 2003-02-06
VIP期限: 2007-04
住址: 台北.中和
文章: 507
精華: 0
現金: 0 金幣
資產: 670 金幣
預設 組合語言作業~插入排序~QQ

小弟又來了~麻煩大大了~最後了 ~QQ
語法:
Assignment 2
Due :12/30/2005
(-20% for each day late)
(遲交的每天-20%)

•	The goal of assignment 2 is to learn to implement an assembly program using procedures.
and condition jmp
學習使用jmp實作一個組合程式。
•	In this assignment, you will implement an insertion sort program.  Your program should contain at least two procedures: insertion_sort for sorting a data array, and dump_array for displaying the sorted array. 
你的程式只少需要包含2個功能: 
1.	插入排序法(Insertion Sort):輸入數個數值,並以插入排序法由小至大將數值排序
2.	保存資料的陣列(dump_array):供你使用排序功能的陣列
•	In the assignment , u need let user input how many integers you want to sort and print the data 
本程式中…你需要把使用者輸入的數字排序跟印出
•	arry before sort and after sort . The numbers of sorting integers is between 0 and 100.
本程式中…需要讓使用者輸入一個數字(介於0~100之間)
The following is a pseudo code of insertion sort:

=========================================
Insertion-Sort(A)

for j←2 for length[A]
   do key←A[j]
      △Insert A[j] into the sorted sequence A[1..j-1]
      i←j-1
      while i>0 and A[i]>key
         do A[i+1]←A[i]
            i←i-1
         A[i+1]←key
=========================================

•	Use WriteDec, WriteString, ReadDec, Crlf…etc. in Irvine32.inc to implement your program
* WriteDec:  在標準輸出中寫入一個32-bit無號整數,以十進位顯示
           mov    eax , 295
           call     WriteDec              ; 顯示 "295" 
* WriteString:  寫入一個以null作結尾的字串到標準輸出
           prompt   BYTE   "Enter your name:" , 0
           mov        edx , OFFSET prompt
           call         WriteString
* Crlf : 換行
           call  Crlf 
* ReadDec : ???
•	Graded will based on
o	60% A completely working program is finished.  The code should be complete or almost done (meaning the basic structure of the code is correct but the code may still have bugs), and it should have no compilation error.
o	(30%) The program produces correct results.
o	(10%) Readability.
•	Write Homework by yourself or discuss with classmates, but Never Copy , or Both
Graded will be zero.
kinco 目前離線  
送花文章: 23, 收花文章: 5 篇, 收花: 9 次
回覆時引用此帖
舊 2005-12-29, 06:58 PM   #2 (permalink)
管理版主
 
mini 的頭像
榮譽勳章
UID - 4144
在線等級: 級別:97 | 在線時長:9944小時 | 升級還需:52小時級別:97 | 在線時長:9944小時 | 升級還需:52小時級別:97 | 在線時長:9944小時 | 升級還需:52小時級別:97 | 在線時長:9944小時 | 升級還需:52小時級別:97 | 在線時長:9944小時 | 升級還需:52小時級別:97 | 在線時長:9944小時 | 升級還需:52小時級別:97 | 在線時長:9944小時 | 升級還需:52小時
註冊日期: 2002-12-07
文章: 13388
精華: 0
現金: 26653 金幣
資產: 3024563 金幣
預設

重點在將
for j←2 for length[A]
do key←A[j]
△Insert A[j] into the sorted sequence A[1..j-1]
i←j-1
while i>0 and A[i]>key
do A[i+1]←A[i]
i←i-1
A[i+1]←key

寫成組合語言即可
mini 目前離線  
送花文章: 2027, 收花文章: 8022 篇, 收花: 26847 次
回覆時引用此帖
舊 2005-12-30, 10:01 AM   #3 (permalink)
註冊會員
榮譽勳章
UID - 248756
在線等級: 級別:8 | 在線時長:113小時 | 升級還需:4小時級別:8 | 在線時長:113小時 | 升級還需:4小時級別:8 | 在線時長:113小時 | 升級還需:4小時
註冊日期: 2003-02-06
VIP期限: 2007-04
住址: 台北.中和
文章: 507
精華: 0
現金: 0 金幣
資產: 670 金幣
預設

KEY是什麼?
引用:
作者: mini
重點在將
for j←2 for length
do key←A
△Insert A into the sorted sequence A
i←j-1
while i>0 and A>key
do A←A
i←i-1
A←key

寫成組合語言即可
kinco 目前離線  
送花文章: 23, 收花文章: 5 篇, 收花: 9 次
回覆時引用此帖
舊 2005-12-30, 12:12 PM   #4 (permalink)
管理版主
 
mini 的頭像
榮譽勳章
UID - 4144
在線等級: 級別:97 | 在線時長:9944小時 | 升級還需:52小時級別:97 | 在線時長:9944小時 | 升級還需:52小時級別:97 | 在線時長:9944小時 | 升級還需:52小時級別:97 | 在線時長:9944小時 | 升級還需:52小時級別:97 | 在線時長:9944小時 | 升級還需:52小時級別:97 | 在線時長:9944小時 | 升級還需:52小時級別:97 | 在線時長:9944小時 | 升級還需:52小時
註冊日期: 2002-12-07
文章: 13388
精華: 0
現金: 26653 金幣
資產: 3024563 金幣
預設

key 是一個暫存用變數
可以用 暫存器 或 記憶體變數 來實現
比如
for j←2 for length[A]
do key←A[j]

翻譯過來就變成
語法:
.data
key  Byte 1 DUP (0)
.code
       mov EBX,2        ;EBX 比作 j
       mov ECX,LENGTHOF A
NEXT:
       mov key,A+EBX ;A+EBX = A[j]
;...
       INC EBX
loop NEXT
因為個人沒學過 插入排序法
所以也不多說什麼
mini 目前離線  
送花文章: 2027, 收花文章: 8022 篇, 收花: 26847 次
回覆時引用此帖
舊 2005-12-30, 03:30 PM   #5 (permalink)
註冊會員
榮譽勳章
UID - 248756
在線等級: 級別:8 | 在線時長:113小時 | 升級還需:4小時級別:8 | 在線時長:113小時 | 升級還需:4小時級別:8 | 在線時長:113小時 | 升級還需:4小時
註冊日期: 2003-02-06
VIP期限: 2007-04
住址: 台北.中和
文章: 507
精華: 0
現金: 0 金幣
資產: 670 金幣
預設

謝謝了~我在研究一下~
kinco 目前離線  
送花文章: 23, 收花文章: 5 篇, 收花: 9 次
回覆時引用此帖
發文 回覆



發表規則
不可以發文
不可以回覆主題
不可以上傳附加檔案
不可以編輯您的文章

論壇啟用 BB 語法
論壇啟用 表情符號
論壇啟用 [IMG] 語法
論壇禁用 HTML 語法
Trackbacks are 禁用
Pingbacks are 禁用
Refbacks are 禁用


所有時間均為台北時間。現在的時間是 08:53 AM


Powered by vBulletin® 版本 3.6.8
版權所有 ©2000 - 2025, Jelsoft Enterprises Ltd.


SEO by vBSEO 3.6.1