原创 8. 複雜數據類型的機器級表示

8.1 數組和指針類型的分配和訪問 1. 數組的分配和訪問 (1)數組元素在內存的存放和訪問 定義一個具有4個元素的靜態存儲型short 數據類型數組A,可以寫成“static short A[4];” 第i(0≤i≤3)個元素

原创 3. 運算電路基礎

3.1 數字邏輯電路基礎 1. 布爾代數 0和1分別代表邏輯值“假”和“真” 最基本的邏輯運算有: 與(AND) 或(OR) 非(NOT) “ • ” ( “ ∧” ) “ + ” ( “ ∨ ” ) “ ¯

原创 6.1 IA-32指令類型(一)

IA-32中的主要指令類型 b - 8位,w - 16 位,l - 32 位 (1)傳送指令 通用數據傳送指令 MOV: 一般傳送,包括movb、movw和movl等 MOVS: 符號擴展傳送,如movs

原创 2.2 數據的表示和存儲(二)

2.4 浮點數的編碼表示 1. 浮點數類型 C語言聲明 操作數類型 存儲長度(位) float 單精度浮點數 32 double 雙精度浮點數 64 long double 擴展精度浮點數 80 / 96

原创 Chapter 3 List-Stack-and-Queue(2)

多項式運算(數組) #include <stdio.h> #include <stdlib.h> #define MaxDegree 20 typedef struct PolyNode { int CoeffArray[Max

原创 練習四:運算(表達式樹)

1、 給出指定目錄文件系統的目錄結構,以凹入法寫入文件dir_structure.txt文檔中,並計算出該目錄所佔存儲區域大小。(凹入法顯示參見P93) 2、 設計一個“自動計算器”,具體描述如下: (1)需要計算的表達式以文本文

原创 Chapter 4 Tree

二叉樹 #include <stdio.h> #include <malloc.h> #define MaxSize 100 typedef char ElemType; typedef struct BTNode { Elem

原创 第4章 網絡層(2)

第4章 網絡層 4.4 網際控制報文協議ICMP 爲了提高 IP 數據報交付成功的機會,在網際層使用了網際控制報文協議 ICMP (Internet Control Message Protocol)。 ICMP 允許主機或路

原创 Chapter 9 Graph (2)

Dijkstra算法實現 /*僞碼描述: void Dijkstra(Graph G,Table T) { Vertex V,W; for(; ;) { V = smal

原创 Chapter 3 List-Stack-and-Queue(1)

鏈表(單鏈表) #include <stdio.h> #include <stdlib.h> typedef int ElementType; typedef struct Node { ElementType Data;

原创 Chapter 6 Heap

二叉堆(優先隊列) #include <stdio.h> #include <stdlib.h> #define MinData -1 typedef int ElementType; typedef struct HeapSt

原创 5. IA-32指令系統概述

5.1 程序轉換概述 1.“指令”的概念 (1) 計算機中的指令有微指令、機器指令和僞(宏)指令之分 機器指令 處於硬件和軟件的交界面 (相當於一個菜譜指定的一個完整做菜過程) 微指令 是微程序級命令,屬於硬件範疇

原创 Chapter 7 Sorting

冒泡排序 #include <stdio.h> typedef int ElementType; void BubbleSort(ElementType A[], int N) { int i, j, Tmp; for (i

原创 練習一:通訊錄

設計一個班級同學的通訊錄,要求如下:  通訊錄中每個同學的信息包含以下內容:學號(id)、姓名(name)、電話號碼(tel)。如果需要更多其他信息,請自行添加。  程序主菜單包含以下幾個功能: (1) 添加記錄:通過鍵盤輸入

原创 練習五: 散列(線性探查)

【基本要求】 編寫一個程序,實現哈希表的初始化、插入、查找、刪除等相關運算,並在此基礎上完成如下功能: (1) 建立{16,74,60,43,54,90,46,31,29,88,77}哈希表A[0…12],哈希函數爲H(k)=ke