通過對彙編第一章的學習,我複習了以往的知識,同時也收穫到了一些新知識。
這章主要講述了以下幾個內容:計算機程式語言的演進,組合語言源程式的組成,計算機硬體系統的基本結構以及記憶體位址空間。
計算機程式語言經歷了從機器語言到組合語言再到高階語言的三個階段.機器語言就是一些0,1組成的數字,然後計算機將之轉變成一列高低電平以使計算機的電子器件受到驅動,進行運算。早期的程式設計均使用機器語言。程式設計師們將用0, 1數字編成的程式**打在紙帶或卡片上,1打孔,0不打孔,再將程式通過紙帶機或卡片機輸入計算機,進行運算。這樣的機器語言由純粹的0和1構成,十分複雜,不方便閱讀和修改,也容易產生錯誤。程式設計師們很快就發現了使用機器語言帶來的麻煩,它們難於辨別和記憶,給整個產業的發展帶來了障礙,於是組合語言產生了。
組合語言就是用助記符(mnemonics)代替機器指令的操作碼,用位址符號(symbol)或標號(label)代替指令或運算元的位址。在不同的裝置中,組合語言對應著不同的機器語言指令集,通過彙編過程轉換成機器指令。普遍地說,特定的組合語言和特定的機器語言指令集是一一對應的,不同平台之間不可直接移植。組合語言不像其他大多數的程式語言一樣被廣泛用於程式設計。在今天的實際應用中,它通常被應用在底層,硬體操作和高要求的程式優化的場合。驅動程式、嵌入式作業系統和實時執行程式都需要組合語言。組合語言大體由彙編指令,偽指令,其他一些符號組成。其中,彙編指令有機器碼一一對應,其餘都由編譯器識別。
高階語言(high-level programming language)相對於機器語言(machine language,是一種指令集的體系。這種指令集,稱機器碼(machine code),是電腦的cpu可直接解讀的資料)而言。是高度封裝了的程式語言,與低階語言相對。它是以人類的日常語言為基礎的一種程式語言,使用一般人易於接受的文本來表示(例如漢字、不規則英文或其他外語),從而使程式編寫員編寫更容易,亦有較高的可讀性,以方便對電腦認知較淺的人亦可以大概明白其內容。由於早期電腦業的發展主要在美國,因此一般的高階語言都是以英語為藍本。在2023年代,當東亞地區開始使用電腦時,在日本、台灣及中國大陸都曾嘗試開發用各自地方語言編寫的高階語言,當中主要都是改編basic或專用於資料庫資料訪問的語言,但是隨著程式設計者的外語能力提公升,現時的有關開發很少。由於組合語言依賴於硬體體系,且助記符量大難記,於是人們又發明了更加易用的所謂高階語言。在這種語言下,其語法和結構更類似漢字或者普通英文,且由於遠離對硬體的直接操作,使得一般人經過學習之後都可以程式設計。高階語言通常按其基本型別、代系、實現方式、應用範圍等分類。
計算機系統的體系結構大多遵循馮諾依曼體系結構。馮諾依曼指出他認為的計算機體系結構由五個部分組成,分別為計算器,儲存器,控制器以及輸入和輸出。
記憶體位址空間:設乙個 cpu 的位址匯流排寬度為 n,那麼可以定址2n 個記憶體單元,這2n 個可尋到的記憶體單元就構成了這個 cpu 的記憶體位址空間。記憶體位址空間,也叫定址空間。與 cpu 位址匯流排的寬度直接相關,表示cpu所能尋找到的最大位址空間範圍。記憶體位址空間是乙個邏輯上的概念。
在每台 pc 機上,都有乙個主機板,主機板上有核心器件和一些主要器件。這些器件通過匯流排相連。根據匯流排上傳輸的資訊,從邏輯上分為位址匯流排,資料匯流排,控制匯流排。cpu 在操控這些獨立的物理儲存器是,把他們同意當做乙個邏輯儲存器看待。這個邏輯儲存器即記憶體位址空間。每個物理儲存器在這個邏輯儲存器中都占有位址空間;cpu 在這段位址空間中讀寫資料,實際上就是在相對應的物理儲存器中讀寫資料。所以,記憶體位址空間的容量不等於記憶體的容量。不同的計算機系統的記憶體位址空間分配是不同的。
彙編實踐課第一次作業
第一次 1.求正數,負數的絕對值和and個數和 2.兩數相加 3.求出數字的回文數 4.求出陣列最大值的下標 找正數 含0 和負數的個數和絕對值和 include irvine32.inc data array dd 12,34,56,12,34,9,0,3,0,5,3,5 len dd array...
第一次作業
1.用較低的成本,開發出滿足客戶需求的軟體,開發的軟體可靠性高,易於維護和移植 2.分為設計階段,開發階段和測試執行階段 1 設計階段 分析客戶需求,明確要解決哪些問題,實現哪些功能,以及確定基本方法 2 開發階段 a.概要設計 畫出流程圖,進行模組化劃分,建立模組的層次結構以及呼叫關係 b.詳細設...
第一次作業
1.4 非計算機專業 程式和軟體有何不同?答 程式是通過計算機語言寫出來的具有許多演算法的摸板,是實現軟體功能的底層推手 推手的意思可以理解為動力 所以,程式是軟體的內在因子,而軟體是乙個或多個程式通過編譯器編譯出來的成品。1.3 查詢資料,解釋什麼是圖靈測試?答 指測試者與被測試者 乙個人和一台機...