[原始碼和文件分享]基於組合語言的MVC思想架構2048小遊戲
一 需求分析
在Win32環境下,使用MVC思想架構,同時應用多檔案多模組的軟體設計實踐,以MASM6.15為主要彙編工具,Sublime Text 3為程式碼編寫工具,綜合利用多種彙編命令語句,進行2048遊戲設計開發。
二 技術路線
2.1 系統架構
程式分為一個主模組和三個子模組,其中排行榜模組由於時間關係暫未能完全實現,現只能檢視最高分。
程式架構如下圖所示:
2.2 各模組詳細設計
程式共分為4個檔案:main.asm,game.asm, rank.asm, lib.asm。
main.asm是程式的主模組,程式的主介面、功能選擇都在這裡實現。流程圖如下所示:
rank.asm實現了儲存最高分記錄的功能,包括了建立、讀寫、關閉檔案等功能。能夠更新最高分。流程圖如下所示:
game.asm是程式的核心模組,實現了整個遊戲功能。其中又以GAME函式為主函式,其他如REVIE函式則作為GAME呼叫的子函式。流程圖如下所示:
lib.asm儲存了程式中頻繁使用的如輸出字串、清屏、輸出回車、得到使用者輸入等程式段,在其他檔案中可以以巨集的方式呼叫這些功能。
參考文件和完整的文件和原始碼下載地址:
相關推薦
[原始碼和文件分享]基於C++的吃豆人小遊戲的設計與實現
一 遊戲介紹 遊戲的目的就是控制遊戲的主角小精靈吃掉藏在迷宮內所有的豆子,並且不能被幽靈抓到,總共有三個關卡。 二 系統設計 2.1 系統總體架構 系統總體架構如下表所示: 玩家 地圖 敵軍 方向控
[原始碼和文件分享]基於組合語言的MVC思想架構2048小遊戲
一 需求分析 在Win32環境下,使用MVC思想架構,同時應用多檔案多模組的軟體設計實踐,以MASM6.15為主要彙編工具,Sublime Text 3為程式碼編寫工具,綜合利用多種彙編命令語句,進行2048遊戲設計開發。 二 技術路線 2.1 系統架構 程式分為一個主模組和三個子模
[原始碼和文件分享]基於組合語言的音樂盒設計與實現
基於組合語言的音樂盒設計與實現—彙編課設 一 需求分析 設計一個音樂盒,可用在諸如生日禮品等場景裡。 包含的功能有播放音樂、切換音樂。預設播放第一首音樂,單曲迴圈。當撥動控制開關時切換歌曲,總共三首,分別由三個開關控制。當且僅當一個開關開啟其它開關關閉時有效,多個開關同時開啟時無效。
[原始碼和文件分享]基於組合語言的學生成績管理系統
一 需求分析 用匯編語言編寫一個學生成績管理系統,實現基本的學生成績管理,功能包括成績的錄入,總分和平均分的計算,資料存檔,從檔案中讀入資料等。要求程式介面友好,有輸入界輸出提示,有選單等。 二 程式設計 2.1 程式總流程設計 2.2 新增記錄流程設計 參考文件和完
[原始碼和文件分享]基於Python的PyGame的俄羅斯方塊遊戲設計與實現
摘 要 近年來,隨著遊戲產業的突飛猛進,遊戲玩家的技術也是與日俱增,當你看見遊戲高手完美的表演時,你是否想過我也能達到那種水平,本程式用Python語言編寫俄羅斯方塊,左側顯示正在執行的遊戲,右邊顯示下一個出現的形狀、等級和積分等。遊戲執行時隨著等級的提高而速度加快,這需要玩家快速操作。因此,本
[原始碼和文件分享]基於C++實現的經典坦克大戰遊戲
1 題目描述 這戰車大戰就是指紅白機的戰車大戰,操縱戰車,將敵人通通轟掉,完成這個關卡。 小時後完紅白機時,不能輸人金手指,沒辦法自由控制遊戲,現在剛好有這個OOP專題機會,我們就仿製一個戰車大戰,自己可以完全控制程式碼,做到比輸人金手指更完整的控制。 程式使用 DEV-C 編譯器進行開
[原始碼和文件分享]基於C#的單機版連連看遊戲設計與實現
摘 要 遊戲“連連看”,只要將相同花色的兩張牌用三根以內的直線連在一起就可以消除,規則簡單容易上手。遊戲速度節奏快,畫面清晰可愛,老少皆宜。豐富的道具和公共模式的加入,增強遊戲的競爭性。多樣式的地圖,使玩家在各個遊戲水平都可以尋找到挑戰的目標,長期地保持遊戲的新鮮感。使用新穎的連擊積分規則,使遊
[原始碼和文件分享]基於C語言實現的勇闖迷宮遊戲
1 專案簡介 迷宮只有兩個門,一個門叫入口,另一個門叫出口。一個騎士騎馬從入口進入迷宮,迷宮設定很多障礙,騎士需要在迷宮中尋找通路以到達出口。 2 專案功能要求 迷宮問題的求解過程可以採用回溯法即在一定的約束條件下試探地搜尋前進,若前進中受阻,則及時回頭糾正錯誤另擇通路繼續搜尋的方法。從
[原始碼和文件分享]基於Python的Pygame庫實現的仿微信遊戲中的飛機大戰小遊戲
不知大家是否還記得當時微信上風靡一時的打飛機小遊戲,通過控制我方飛機的上下左右移動,發射子彈來擊毀敵機,增加得分。這是一款簡單操作易上手又很有趣味性的遊戲,我使用python作為基本語言,利用pygame仿照微信版本完成了這款低配版飛機大戰遊戲。 我方飛機會按時的不斷髮射子彈,玩家通過上下左右的方向鍵來躲避
[原始碼和文件分享]基於WIN32彙編實現的仿Windows計算器
使用Win32程式設計設計一個功能及介面風格類似於Windows計算器的計算器程式,只要求實現標準型計算器。 主要實現的功能:包含基本的四則運算、倒數運算、平方根運算。並支援儲存區的儲存、清除、調出、累加等功能。 關鍵詞:win32,Windows計算器,彙編,四則運算,倒數運算,平方根運算
[原始碼和文件分享]基於C++的資料庫可擴容雜湊
一、專案介紹 主要涉及可擴充套件雜湊在資料庫中的應用。 讀入由 tpc-h 生成的 lineitem.tbl,以 L_ORDERKEY 屬性作為鍵值將記錄放入合適的雜湊桶內。讀入測試檔案 testinput.in 內的資料,資料中包含多個需要查詢的鍵值。將通過鍵值查詢得到的所有記錄都輸出到
[原始碼和文件分享]基於Newban的Nancyj字型Email簽名工具
一 需求分析 Newban是一個輸出mail簽名的工具,能夠在終端將字元進行“圖形化”輸出。本程式就是用所給字型檔案,在螢幕上輸出該字型的簽名,並要求實現如下功能: 能設定輸出寬度 能設定輸出對齊方式,可以設定左對齊、居中對齊、右對齊 能指定字型 基本要
[原始碼和文件分享]基於C語言實現的流星雨模擬課程設計
一、課程設計內容及要求 程式模擬一組流星飛向地面的情景。地面用多行#來表示,流星用大寫字母不表示。程式產生一組流星(比如10個),從螢幕頂部下降飛向地面。一組流星中,每個流星的字元顏色是隨機的,下降的位置是隨機的,下降的速度也是隨機的。一個流星下落只能去掉一個#號,當最後一行地面有#被去掉時,程
[原始碼和文件分享]基於C++的圖書管理系統
一、需求分析 圖書管理系統功能如下: 新增書籍 刪除書籍:當系統中存在此書時,刪除該書籍,否則提示使用者刪除失敗 借閱書籍:當系統中存在此書且未被借閱時,將書的狀態設定為“借出”,否則提示使用者借閱失敗 歸還書籍:當系統中存在未歸換的該書時,將書的狀態設
[原始碼和文件分享]基於C++的多項式計算器
一、 實驗環境 1.1 程式語言和開發工具 語言採用ANSI C++(C++11) 開發工具:vim,g++,git,Visual Stdio(用於生成exe檔案) 1.2 編碼規範 編碼規範中所有沒有涉及到的內容,參見googlestyle C++
[原始碼和文件分享]基於C++的學生選課管理系統的設計與實現
一 需求分析 系統新增課程:將一門課程加入到系統資料中。課程提交重複時給出提示資訊 系統刪除課程:以課程編號為索引刪除課程。系統無此課程時給出提示 課程新增學生:把學生的姓名、學號等資訊加入到課程中。學號重複時給出提示資訊 課程刪除學生:以學號為索引從課程中
[原始碼和文件分享]基於C++的物資管理系統的設計與實現
一 需求分析 程式需實現以下功能: 新物資資訊錄入(編號、名稱、庫存) 查詢已錄入的所有物資資訊(編號或名稱為索引) 新增物資資訊(編號或名稱為索引) 領物資並生成領料單(編號或名稱為索引) 瀏覽領料單或物資庫存清單 物資資訊儲存,建
[原始碼和文件分享]基於C++的庫存管理系統設計與實現
一 需求分析 1.1 總體要求 運用面向物件程式設計知識,利用C++語言設計和實現一個“庫存管理系統設計”,主要完成對商品的銷售、統計和簡單管理。在實現過程中,需利用面向物件程式設計理論的基礎知識,充分體現出C++語言關於類、繼承和封裝等核心概念,每一個類應包含資料成員和成員函式。 1.
[原始碼和文件分享]基於C++的平面形狀編輯器的設計與實現
一 需求分析 參考如下給出的類層次關係,實現一個平面上的形狀編輯程式序。要求如下: 按照下面類圖給出的層次關係來定義類 所有形狀支援無引數構造,有引數構造,拷貝構造,析構 所有形狀支援平移操作,需要過載 operator+ 所有形狀(除去無意義的)
[原始碼和文件分享]基於C++的民航訂票系統的設計與實現
一、需求分析 設計一個民航管理系統,使更廣大的使用者群體可以藉助這個平臺訂飛機票。 C++作為一個面向物件的語言,利用多型性和封裝性可以更好地表達出這些功能,相比 JAVA 等語言,C++具STL,可以表達更強的封裝性。 二、程式的主要功能 登入和註冊使用者,管理員的登入