|
論壇說明 |
歡迎您來到『史萊姆論壇』 ^___^ 您目前正以訪客的身份瀏覽本論壇,訪客所擁有的權限將受到限制,您可以瀏覽本論壇大部份的版區與文章,但您將無法參與任何討論或是使用私人訊息與其他會員交流。若您希望擁有完整的使用權限,請註冊成為我們的一份子,註冊的程序十分簡單、快速,而且最重要的是--註冊是完全免費的! 請點擊這裡:『註冊成為我們的一份子!』 |
|
主題工具 | 顯示模式 |
2007-09-30, 10:21 PM | #1 |
管理版主
|
討論 - 動態組合的程式技巧
不知有無支援 動態組合 這種程式語言 或 語法範例
比如 一個程式有 A、B、C 等 副程式 傳統程式設計之 主程式 如下 語法:
For i = 0 to n If x.check = 1 then Call A If y.check = 1 then Call B If z.check = 1 then Call C Next 動態組合之 主程式 如下 語法:
ret = GetSUBAddress(Z) If x.check = 1 then Call SubAdd(ret, GetSUBAddress(A)) If y.check = 1 then Call SubAdd(ret, GetSUBAddress(B)) If z.check = 1 then Call SubAdd(ret, GetSUBAddress(C)) For i = 0 to n Call Z Next SubAdd 根據 函式的位址 負責將 A、B、C 串接成 Z Z 是動態組合副程式 其作用是可省略每次的 If x.check = 1 then If y.check = 1 then If z.check = 1 then 當 n 是一筆很大的數值時,將可節省下相當的運算時間 當然前提是 Z 不能有多餘的判讀 否則就失去其意義 ====================== 用組合語言好像可以改寫的出來 不過...太麻煩了 自己可以想到的是 根據 A、B、C 大小 及 If x.check = 1 then If y.check = 1 then If z.check = 1 then 結果 宣告一個空白的記憶體 再將 A、B、C 稍做修改的內容 傾印入內 做成一個全新的 可執行副程式 只是中間好像不是這麼單純的樣子... |
送花文章: 2001,
|
向 mini 送花的會員:
|
joebin (2007-09-30)
感謝您發表一篇好文章 |
|
|
相似的主題 | ||||
主題 | 主題作者 | 討論區 | 回覆 | 最後發表 |
系統 - 系統應用高階技巧錦集 | psac | 作業系統操作技術文件 | 5 | 2007-03-25 12:29 AM |
教學 - Ghost 8.3 使用例子 和 參數指導 | psac | 應用軟體使用技術文件 | 7 | 2006-10-03 03:52 AM |
Win98 怎麼灌 | 86258354 | 軟體應用問題討論區 | 7 | 2005-12-06 07:18 PM |
反病毒引擎設計之既時監控篇 | psac | 應用軟體使用技術文件 | 0 | 2004-08-11 03:48 PM |
Windows 2000/Xp 錯誤編號詳解(收集整理) | psac | 作業系統操作技術文件 | 9 | 2003-08-03 03:27 PM |