




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
1、 TOC o 1-5 h z HYPERLINK l bookmark16 o Current Document 一、課程設(shè)計(jì)目的與意義2 HYPERLINK l bookmark20 o Current Document 二、課程設(shè)計(jì)要求2 HYPERLINK l bookmark27 o Current Document 三、幀結(jié)構(gòu)分析2幀的介紹2CRC校驗(yàn)分析4 HYPERLINK l bookmark42 o Current Document 四、幀封裝的過程71、填充幀頭部字段72、填充數(shù)據(jù)字段83、CRC 校驗(yàn)9 HYPERLINK l bookmark53 o Current D
2、ocument 五、幀封裝流程圖11 HYPERLINK l bookmark56 o Current Document 六、幀封裝方法的相關(guān)擴(kuò)展121、比特型算法122、字節(jié)型算法12 HYPERLINK l bookmark72 o Current Document 七、程序調(diào)試分析與結(jié)果13 HYPERLINK l bookmark82 o Current Document 八、課程設(shè)計(jì)心得與體會14 HYPERLINK l bookmark86 o Current Document 附錄一:參考文獻(xiàn)15 HYPERLINK l bookmark93 o Current Document
3、 附錄二:幀封裝源程序16一、課程設(shè)計(jì)目的與意義幀是在數(shù)據(jù)鏈路層數(shù)據(jù)進(jìn)行傳輸與交換的基本單位。構(gòu)造幀對于理解網(wǎng)絡(luò)協(xié) 議的概念、協(xié)議執(zhí)行過程以及網(wǎng)絡(luò)問題處理的一般方法具有重要的意義。本次課 程設(shè)計(jì)的目的是應(yīng)用數(shù)據(jù)鏈路層與介質(zhì)訪問控制層的知識,根據(jù)數(shù)據(jù)鏈路層的基 本原理,通過構(gòu)造一個具體的Ethernet幀,從而深入理解網(wǎng)絡(luò)協(xié)議的基本概念 與網(wǎng)絡(luò)問題處理的一般方法。二、課程設(shè)計(jì)要求編寫程序,根據(jù)給出的原始數(shù)據(jù),組裝一個IEEE802.3格式的幀,(默認(rèn)的 輸入文件為二進(jìn)制原始數(shù)據(jù)(文件名分別為li和lzy)。1)要求程序?yàn)槊钚谐绦颉1热?,可?zhí)行文件各為framer.exe,則命令行形式如下:fr
4、amer inputfile outpurfile其中,inputfile為原始數(shù)據(jù)文件,outpurfile為輸出結(jié)果。2)輸出:對應(yīng)input1和input2的結(jié)果分別為output1和output2。3)開發(fā)環(huán)境:硬件環(huán)境:PC微機(jī)軟件環(huán)境:Windows 2000 Microsoft Visual C+ 6.0三、幀結(jié)構(gòu)分析1.幀的介紹術(shù)語“幀”來源于串行線路上的通信。其中,發(fā)送者在發(fā)送數(shù)據(jù)的前后各添 加特殊的字符,使它們成為一個幀。Ethernet從某種程序上可以被看作是機(jī)器 這間的數(shù)據(jù)鏈路層連接。首先我們來認(rèn)識一下Ethernet幀結(jié)構(gòu),Ethernet V2.0規(guī)范和IEEE80
5、2.3 標(biāo)準(zhǔn)中的Ethernet幀結(jié)構(gòu)有一些差別,這里我們按802.3標(biāo)準(zhǔn)的幀結(jié)構(gòu)進(jìn)行討 論,圖一給出了 Ethernet幀結(jié)構(gòu)圖。前導(dǎo)碼幀前定界符目的地址源地址長度字段數(shù)據(jù)字段校驗(yàn)字段(7B)(1B)(2/6B)(2/6B)(2B)(長度可變)(4B)圖一 Ethernet幀結(jié)構(gòu)如圖一所示,802.3標(biāo)準(zhǔn)的Ethernet幀結(jié)構(gòu)由6部分組成。前導(dǎo)碼與幀前定界符字段前導(dǎo)碼由56位(7B)的1010101101010位序列組成。幀前定界符可以 視為前導(dǎo)碼的延續(xù)。1B的幀前定界符結(jié)構(gòu)為10101011。如果將前導(dǎo)碼與幀定界符一起看,那么在62位1010101010位序列之后出 現(xiàn)11。在11之后是
6、Ethernet幀的目的地址字段。前導(dǎo)碼與幀前定界符主要是 保證接收同步,這8B接收后不需要保留,也不記入幀頭長度中。目的地址和源地址目的地址(DA)與法制地址(SA)分別表示幀的接收結(jié)點(diǎn)地址與發(fā)送結(jié)點(diǎn)的硬 件地址。在Ethernet幀中,目的地址和法制地址字段長度可以是2B或6B。目前 的Ethernet都使用6B(即48位)長度的地址。 Ethernet幀的目的地址可以是單播地址(unicast address)、多播地址 (multicast address)與廣播地址(broadcast address),目的地址的第一位 為0表示單播地址,為1表示多播地址,目的地址為全1表示廣播地址
7、。長度字段802. 3標(biāo)準(zhǔn)中的幀用2B定義數(shù)據(jù)字段包含的字節(jié)數(shù)。協(xié)議規(guī)定,幀數(shù)據(jù)的 最小長度為46B,最大長度為1500B。設(shè)置最小幀長度的目的是使每個接收結(jié)點(diǎn) 能夠有足夠的時間檢測到?jīng)_突。數(shù)據(jù)字段幀數(shù)據(jù)字段的最小長度為46B。如果幀的LLC數(shù)據(jù)少于46B,則應(yīng)將數(shù)據(jù)字 段填充至46B。填充字符是任意的,不計(jì)入長度字段值中。(5 )檢驗(yàn)字段幀校驗(yàn)字段(FCS)采用32位的CRC校驗(yàn)。校驗(yàn)的范圍包括目的地址字段、 源地址字段、長度字段、LLC數(shù)據(jù)字段。此處,為了簡便起見,采用8位的CRC校驗(yàn)。CRC校驗(yàn)的生成多項(xiàng)式為:G(x)= X8+ X2+x+1某些幀結(jié)構(gòu)中還會包括幀類型字段,用來識別些帖所
8、承載的數(shù)據(jù)的類型。當(dāng) 一個幀到達(dá)指定的計(jì)算機(jī)時,操作系統(tǒng)根據(jù)幀類型決定用哪個協(xié)議軟件模塊對它 進(jìn)行處理。自識別幀的主要優(yōu)點(diǎn)是,可以在同一物理網(wǎng)絡(luò)中使用多個協(xié)議而互不 干擾。2. CRC校驗(yàn)分析我們已經(jīng)知道了差錯控制在通信中的重要意義,以及簡單的差錯校驗(yàn)碼計(jì)算 過程。在這里我們進(jìn)一步來了解循環(huán)冗余編碼(CRC)的編碼方式。它是一種重要 的線性分組碼、編碼和解碼方法,具有簡單、檢錯和糾錯能力強(qiáng)等特點(diǎn),在通信 領(lǐng)域廣泛的用于實(shí)現(xiàn)差錯控制。實(shí)際上,除數(shù)據(jù)通信外,CRC在很多領(lǐng)域也是大 有用武之地的。利用CRC進(jìn)行檢錯的過程可簡單描述如下:在發(fā)送端根據(jù)要傳送的k位二進(jìn) 制碼序列,以一定的規(guī)則產(chǎn)生一個校驗(yàn)
9、用的r位監(jiān)督碼(CRC碼),附在原始信息 的后邊,構(gòu)成一個新的二進(jìn)制碼序列(共k+r位),然后發(fā)送出去。在接收端,根 據(jù)信息碼和CRC碼之間所遵循的規(guī)則進(jìn)行檢驗(yàn),以確定傳送中是否出錯。這個規(guī) 則在差錯控制理論中稱為“生成多項(xiàng)式”。(1)CRC編碼的代數(shù)學(xué)原理在代數(shù)編碼理論中,將一個碼組表示為一個多項(xiàng)式,碼組中的各碼元作為多 項(xiàng)式的系數(shù)。例如,1100101 表示為 1*6+1*5 + 0)4 + 0)3+1)2 + 0)+1, 即 X6 + X5+X2+1。設(shè)編碼前的原始信息多項(xiàng)式為P(x), P(x)的最高幕次加1等于k;生成多項(xiàng) 式為G(x),G(x)的最高幕次等于r; CRC多項(xiàng)式為R(
10、x);編碼后的帶CRC的信息 多項(xiàng)式為T(x)。發(fā)送編碼的方法是:將P(x)乘以x”r(即對應(yīng)的二進(jìn)制碼序列左移r位),再 除以G(x),得余式即為R(x)。用公式可以表示為T(x) =XrP(x) +R(x)接收方解碼的方法是:將T(x)除以G(x),如果余數(shù)為0,則說明傳輸中無錯 誤發(fā)生,否則說明傳輸有誤。舉例來說,設(shè)信息碼為1100,生成多項(xiàng)式為1011,即P(x)=x3+x2,G(x)=x3 +x+1,則可以用以下方法計(jì)算CRC。XrP(x)X3(X3 + X2) X6+X5X=(X3+X2+X) +G(x)X3+X+1X3+X+1X3+X+1即R(x)=x。注意到G(x)最高幕次r=
11、3,得出CRC為010。如果用豎式除法,計(jì)算 過程為:11101011/1100000(1100 左移 3 位)1011111010111010101100100000010因此,T(x) = (x6+x5) + (x)=x6+x5+x,即 1100000+010=1100010。如果傳輸無誤,則T(x)X6+x5+x二二 x3 +2 +xG(x)x3 +x+1無余式??匆幌律厦娴呢Q式除法,如果被除數(shù)是1100010,顯然在商第3個1時, 就能除盡。上述推算過程有助于我們理解CRC的概念。但如果直接編程來實(shí)現(xiàn)上面的算 法,不僅繁瑣,而且效率也不高。實(shí)際上在工程中不會直接這樣去計(jì)算和驗(yàn)證 CRC
12、。表一 標(biāo)準(zhǔn)的CRC名稱生成多項(xiàng)式簡記式*應(yīng)用舉例CRC-4X4+X+1ITU G.704CRC-12X12+X11+X3+X+1CRC-16X16+X12+X2+11005IBM SDLCcrc-itu*X16+X12+X5+11021ISO HDLC, ITU X.25, V.34/V.41/V.42, PPP-FCSCRC-32X32+X26+X23 + .+X2+X+104C11DB7ZIP, RAR, IEEE 802 LAN/FDDI, IEEE 1394, PPP-FCSCRC-32cX32+X28+X27 + .+X8+X6+11EDC6F41SCTP該表中列出了一些標(biāo)準(zhǔn)CRC
13、資料。生成多項(xiàng)式的最高幕次項(xiàng)系數(shù)是固定的1,故在簡記式中,將最高的1統(tǒng) 一去掉了,如04C11DB7實(shí)際上是104C11DB7。前稱CRC-CCITT。ITU的前身是CCITT。CRC計(jì)算生成多項(xiàng)式G(x)通常用n次多項(xiàng)式定義:G(x)=Xn+g X +gX+ n-1 n-1i i+g2X2+g1X+1,其中g(shù)i為0或1,i=1,2,n-1。通常CRC計(jì)算可以用有n個存 儲器級的移位寄存器實(shí)現(xiàn),如圖二所示。如果多項(xiàng)式的相應(yīng)項(xiàng)的系數(shù)為1,那么 相應(yīng)的存儲器級輸入端的模2加法器是有分支的。根據(jù)應(yīng)用的不同,在系統(tǒng)開始 工作前將所有的移位寄存器全部置“0”或“1” 。在圖二中輸入端送入的是原始數(shù)據(jù)序列
14、,移位寄存器各級的輸出、 b、b便是CRC碼字。其中b和b分別代表最低有效位(LSB)和最高有效位 n-2n-10n-1(MSB)。(3)CRC的基本實(shí)現(xiàn)以CRC-8(X8+X2+X1+1)為例(如圖三所示),它由多個移位寄存器和加法器組成。編碼、解碼前將個寄存器初始化為0,輸入位作為最右邊異或操作的輸入之一。 三個寄存器上的移位操作同時進(jìn)行,均為左移一位,左邊寄存器的最左一位作為 三個異或操作的輸入之一。每次移位時,最右邊的寄存器內(nèi)容作為中間異或操作 的輸入之一,中間的寄存器的內(nèi)容作為最左邊異或操作的輸入之一,各個異或操 作的結(jié)果作為與它左邊那個寄存器的移入位。重復(fù)以上步驟,每輸入一個位就做
15、 一次移位操作,直到輸入了所有要計(jì)算的數(shù)據(jù)為止。這時,這個寄存器組中的數(shù) 據(jù)就是CRC-8的結(jié)果。圖三給出了 CRC基本實(shí)現(xiàn)方法。圖三CRC基本實(shí)現(xiàn)CRC的工作原理是,CRC在發(fā)送端編碼和接受端校驗(yàn)時,都可以利用事先約 定的生成多項(xiàng)式G(x)來得到,K位要發(fā)送的信息位可對應(yīng)于一個(K-1 )次多項(xiàng)式 K(x),r為冗余位則對應(yīng)于一個(r-1 )次多項(xiàng)式R(x),有r位冗余位組成的n=k+r 位碼字則對應(yīng)與一個(n-1)次多項(xiàng)式T(x)= Xr*K(x)+R(x)。(4 )循環(huán)冗余校驗(yàn)碼的特點(diǎn)CRC校驗(yàn)碼的檢測能力很強(qiáng),不僅能檢查出離散錯誤,還能檢查出突發(fā)錯誤。 CRC校驗(yàn)碼具有以下檢錯能力:C
16、RC檢驗(yàn)碼可檢測出所有單個錯誤。CRC檢驗(yàn)碼可檢測出所有奇數(shù)位錯誤。CRC檢驗(yàn)碼可檢測出所有雙位的錯誤。CRC檢驗(yàn)碼可檢測出所有小于、等于校驗(yàn)位長度的突發(fā)錯誤。CRC檢驗(yàn)碼可以1- (1/2)k-i的概率檢測出長度為(K+1 )位的突發(fā)錯誤。四、幀封裝的過程1、填充幀頭部字段要完成一次幀封裝的過程,首先要完成的就是幀頭部的裝入,這一過程非常 簡單,只要將前導(dǎo)碼、定界符、目的地址、源地址、長度字段的響應(yīng)數(shù)值按順序 寫入就可以了。其中,長度字段的值即為要發(fā)送的數(shù)據(jù)的實(shí)際長度。我們可以通 過以下兩種方式來獲得長度字段的值。方法一While(!in.eof()/讀數(shù)據(jù)至緩沖區(qū)bufin.get(a);
17、bufj=a;/通過j來記錄輸入數(shù)據(jù)的長度j+;方法二infile.open(argv1,ios:binary);/打開指定輸入文件infile.seekg(0,ios:end);/將文件讀指針移到末尾short length=(short)infile.tellg();/獲得位置偏移量,即為輸入文件長度file.put(char(length/256);/將該長度寫入數(shù)據(jù)長度字段(2B)file.put(char(length%256);注意,上面程序的最后兩行是把讀到的數(shù)據(jù)長度值按逆序填入長度字段。這 就涉及網(wǎng)絡(luò)字節(jié)序的問題。計(jì)算機(jī)數(shù)據(jù)存儲有兩種字節(jié)優(yōu)先順序,即高位字節(jié)優(yōu)先和低位字節(jié)優(yōu)先。
18、低位字節(jié)優(yōu)先:低序字節(jié)存儲在起始地址。高位字節(jié)優(yōu)先:高序字節(jié)存儲在起始地址。Internet上的數(shù)據(jù)以高位字節(jié)優(yōu)先順序在網(wǎng)絡(luò)上傳輸,所以對于在機(jī)器內(nèi) 部以低位字節(jié)優(yōu)先方式存儲的數(shù)據(jù)來說,在Internet上傳輸數(shù)據(jù)時就需要進(jìn)行 轉(zhuǎn)換,否則就會出現(xiàn)數(shù)據(jù)不一致。下面是幾個字節(jié)順序轉(zhuǎn)換函數(shù):Htonl():把32位值從主機(jī)字節(jié)序轉(zhuǎn)換成網(wǎng)絡(luò)字節(jié)序。Htons():把16位值從主機(jī)字節(jié)序轉(zhuǎn)換成網(wǎng)絡(luò)字節(jié)序。Ntonl():把32位值從網(wǎng)絡(luò)字節(jié)序轉(zhuǎn)換成主機(jī)字節(jié)序。Ntons():把16位值從網(wǎng)絡(luò)字節(jié)序轉(zhuǎn)換成主機(jī)字節(jié)序。2、填充數(shù)據(jù)字段在填充數(shù)據(jù)字段的過程中要注意的主要問題是數(shù)據(jù)字段的長度。802.3標(biāo)準(zhǔn) 中
19、規(guī)定了幀數(shù)據(jù)字段的最小長度為46B,最大長度為1500B。如果數(shù)據(jù)不足46B, 則需要通過填充0來補(bǔ)足;如數(shù)據(jù)長度超過1500B,則將超過部分封裝入下一個 幀進(jìn)行發(fā)送。由于幀頭部分應(yīng)該包括6B目的地址、6B源地址字段、2B長度字段以及4B 幀校驗(yàn)字段,因此幀頭部分長度為18B。前導(dǎo)碼與幀前定界符不計(jì)入幀頭部長度 中。那么,Ethernet幀的最小長度為64B,最大長度為1518B。填充數(shù)據(jù)字段的代碼如下:if(len=1500)/讀滿1500B后,封裝成一個幀并輸出/封裝成一個幀并輸出len=0;長度計(jì)數(shù)重置0)/如果數(shù)據(jù)的長度小于46則補(bǔ)0If(len64)for(i=len; i46; i
20、+)fr.datai=0 x00;/在數(shù)據(jù)字段中填充0data_len=len;/獲得數(shù)據(jù)的實(shí)際長度放入data_len3、CRC校驗(yàn)幀封裝的最后一步就是對數(shù)據(jù)進(jìn)行校驗(yàn),并將校驗(yàn)結(jié)果記入幀校驗(yàn)字段。下 面舉例說明在本程序中是如何實(shí)現(xiàn)CRC-8校驗(yàn)算法的。設(shè)數(shù)據(jù)為10010010,CRC-8 的生成多項(xiàng)式為X8+X2+X1+1即10000111。先看一下在代數(shù)學(xué)中計(jì)算CRC校驗(yàn)的一 般算法。如果用豎式除法,計(jì)算過程如下:10010001100000111 1001001000000000(后面補(bǔ) 8 個 0)10000001111000110001000001111111100001000001
21、1111110111從上式可以看出,CRC編碼實(shí)際上是一個循環(huán)移位的模2運(yùn)算。對于CRC-8, 假設(shè)有一個9位的寄存器,通過反復(fù)移位和進(jìn)行CRC除法,最終該寄存器中的值 去掉最高一位就應(yīng)該是我們所需要的余數(shù)。上述步驟可以用下面的流程描述:/crc是一個9位的寄存器把crc中的值置為0在原始數(shù)據(jù)input后添加8個0While(數(shù)據(jù)未處理完)beginif(crc首位是1)crc=crc XOR 100000111把crc中的值左移一位,從input中讀一位新的數(shù)據(jù)并置于crc的0位endcrc中后8位就是經(jīng)過CRC-8校驗(yàn)的余數(shù)。這樣,我們只需要看后8位即可, 因此上面流程可以簡化。構(gòu)造一個8
22、位的寄存器crc,初始值為0,數(shù)據(jù)依次移 入crc的0位,同時crc的7位移出。當(dāng)移出的數(shù)據(jù)為1時,crc才和0000111 進(jìn)行XOR運(yùn)算;移出的數(shù)據(jù)為0時,不做運(yùn)算。每次crc中數(shù)據(jù)左移后就需要從 輸入數(shù)據(jù)中讀入一位新的數(shù)據(jù)。由于左移時crc 0位補(bǔ)0,因此當(dāng)讀入的數(shù)據(jù)最 高位為1時還需要對crc 0位進(jìn)行處理(將crc與00000001異或使0位置1)。下面給出偽代碼:/crc是一個8位的寄存器把crc中的值置為0在原始數(shù)據(jù)input后添加8個0while(數(shù)據(jù)未處理完)beginif(crc首位是1)crc左移1位crc=crc XOR 00000111elsecrc左移1位if(從i
23、nput中讀入的新的數(shù)據(jù))end五、幀封裝流程圖圖四 幀封裝流程圖六、幀封裝方法的相關(guān)擴(kuò)展除了上面介紹的方法之外,還有其它一些算法可以完成CRC校驗(yàn)。例如,多 項(xiàng)式除法,可用除法電路來實(shí)現(xiàn)。除法電路的主體由一組移位寄存器和模2加法 器(異或單元)組成。以CRC-ITU為例,它由16級移位寄存器和3個加法器組成, 見下圖(編碼/解碼共用)。編碼、解碼前將各寄存器初始化為1,信息位隨著時 鐘移入。當(dāng)信息位全部輸入后,從寄存器組輸出CRC結(jié)果。H15|14|13|12|11|-MS|io| 9 I 8 I 了 I B I 5 I 4比特輸入1圖五除法電路實(shí)現(xiàn)CRC1、比特型算法上面的CRC-ITU除
24、法電路,完全可以用軟件來模擬。定義一個寄存器組,初 始化為全1。依照電路圖,每輸入一個信息位,相當(dāng)于一個時鐘脈沖到來,從 高到低依次移位。移位前信息位與bit0相加產(chǎn)生臨時位,其中bit15移入臨時 位,bit10、bit3還要加上臨時位。當(dāng)全部信息位輸入完成后,從寄存器組取出 它們的值,這就是CRC碼。2、字節(jié)型算法比特型算法逐位進(jìn)行運(yùn)算,效率比較低,不適用于高速通信的場合。數(shù)字通 信系統(tǒng)(各種通信標(biāo)準(zhǔn))一般是對一幀數(shù)據(jù)進(jìn)行CRC校驗(yàn),而字節(jié)是幀的基本單 位。最常用的是一種按字節(jié)查表的快速算法。該算法基于這樣一個事實(shí):計(jì)算本 字節(jié)后的CRC碼,等于上一字節(jié)余式CRC碼的低8位左移8位,加上上
25、一字節(jié) CRC右移8位和本字節(jié)之和后所求得的CRC碼。如果我們把8位二進(jìn)制序列數(shù)的 CRC(共256個)全部計(jì)算出來,放在一個表里,編碼時只要從表中查找對應(yīng)的值 進(jìn)行處理即可。CRC-ITU的計(jì)算算法如下:1)寄存器組初始化為全1(0 xFFFF)。2)寄存器組向右移動一個字節(jié)。3)剛移出的那個字節(jié)與數(shù)據(jù)字節(jié)進(jìn)行異或運(yùn)算,得出一個指向值表的索引。4)索引所指的表值與寄存器組做異或運(yùn)算。5)數(shù)據(jù)指針加1,如果數(shù)據(jù)沒有全部處理完,則重復(fù)步驟b。6)寄存器組取反,得到CRC,附加在數(shù)據(jù)之后。CRC-ITU的驗(yàn)證算法如下:1)寄存器組初始化為全1(0 xFFFF)。2)寄存器組向右移動一個字節(jié)。3)剛
26、移出的那個字節(jié)與數(shù)據(jù)字節(jié)進(jìn)行異或運(yùn)算,得出一個指向值表的索引。4)索引所指的表值與寄存器組做異或運(yùn)算。5)數(shù)據(jù)指針加1,如果數(shù)據(jù)沒有全部處理完,則重復(fù)步驟b (數(shù)據(jù)包括CRC的兩個字節(jié))。6)寄存器組的值是否等于“Magic Value”(0 xF0B8),若相等則通過,否則失敗。七、程序調(diào)試分析與結(jié)果先進(jìn)入Microsoft Visual C+ 6.0中,編譯運(yùn)行源程序,生成可執(zhí)行文件。其可執(zhí)行文件名為lizeyin.exe。然后進(jìn)入DOS中,進(jìn)行幀的封裝,其過程如下圖五所示。圖六幀封裝過程圖其中,輸入命令行中的“ lizeyin”指的是生成的可執(zhí)行文件,這里生成的 是lizeyin. ex
27、e; “原始數(shù)據(jù)文件”指的是在可執(zhí)行文件存放路徑下的一個數(shù)據(jù) 文件,我在這里新建了一個文本文檔li. txt,其中的內(nèi)容為:My name is lizeyin!計(jì)科 05104 班。其二進(jìn)制形式如下圖七所示: 4D 79 20 6E 61 6D 65 20-69 73 206忘69 7A6579My name is lizey101; 69 6E 21 21 21 20 B(t. C6-BF C6 303531 303 4BOin! ! ! . . . .05104.20 EO.圖七原始數(shù)據(jù)的二進(jìn)制形式圖“輸出結(jié)果”是將原始數(shù)據(jù)文件進(jìn)行封裝后所得到的一個文件,它也將存放 在可執(zhí)行文件存放的路
28、徑下,這里封裝后的文件名是:lzy.txt,其中的內(nèi)容是:金告:A篇!My name is lizeyin!計(jì)科 05104 班其二進(jìn)制形式如下圖八所示::AAAAAAAAAAAAAAAB-0000E4863ADC0000:.10:801AE665214D79-206E616D6520693.e.!Mynameis20:206C697A6579696E-21212120BCC6BFC6 lizeyin! ! !.30:3035313034BOEO00-00000000000000000510440: 86圖八 輸出結(jié)果的二進(jìn)制形式圖八、課程設(shè)計(jì)心得與體會課程設(shè)計(jì)是培養(yǎng)學(xué)生綜合運(yùn)用所學(xué)知識,發(fā)現(xiàn)
29、、提出、分析和解決實(shí)際問題, 鍛煉實(shí)踐能力的重要環(huán)節(jié),是對學(xué)生實(shí)際工作能力的具體訓(xùn)練和考察過程。隨 著科學(xué)技術(shù)發(fā)展的日新日異,當(dāng)今計(jì)算機(jī)應(yīng)用在生活中可以說得是無處不在, 因此作為二十一世紀(jì)的大學(xué)來說掌握計(jì)算機(jī)開發(fā)技術(shù)是十分重要的?;仡櫰鸫舜握n程設(shè)計(jì),我感慨頗多。它不僅鞏固了我所學(xué)過的知識,而且 讓我學(xué)到了很多在書本上所沒有學(xué)到過的知識。通過這次課程設(shè)計(jì)使我懂得了理 論與實(shí)際相結(jié)合是很重要的,只有理論知識是遠(yuǎn)遠(yuǎn)不夠的,只有把所學(xué)的理論知 識與實(shí)踐相結(jié)合起來,從理論中得出結(jié)論,才能真正為社會服務(wù),提高自己的實(shí) 際動手能力和獨(dú)立思考的能力。在該設(shè)計(jì)過程中我遇到了許多的問題,讓我發(fā)現(xiàn) 了自己的不足之處
30、,對以前所學(xué)過的知識理解得不夠深刻,掌握得不夠牢固,看 到了自己的實(shí)踐經(jīng)驗(yàn)還是比較缺乏,理論聯(lián)系實(shí)際的能力還急需提高。對我而言,知識上的收獲重要,精神上的豐收更加可喜。讓我知道了學(xué)無止 境的道理。我們每一個人永遠(yuǎn)不能滿足于現(xiàn)有的成就,人生就像在爬山,一 座山峰的后面還有更高的山峰在等著你。挫折是一份財富,經(jīng)歷是一份擁有。附錄一:參考文獻(xiàn)吳功宜、胡曉英等,計(jì)算機(jī)網(wǎng)絡(luò)課程設(shè)計(jì),北京:機(jī)械工業(yè)出版社,2007.12楊豐瑞、楊豐任,實(shí)用教程最新計(jì)算機(jī)網(wǎng)絡(luò),北京:中國鐵道出版社,2007.7胡曉英等,計(jì)算機(jī)網(wǎng)絡(luò)課程設(shè)計(jì),北京:機(jī)械工業(yè)出版社,2005.9郭國強(qiáng)等著,計(jì)算機(jī)網(wǎng)絡(luò)與Internet教程,北京:清華出版社,2006.11附錄二:幀封裝源程序#include #include void main (int argc,char* argv)if(argc!=3)/判斷輸入的命令行格式是否正確cout 請按以下格式輸入命令行:framer inputfile outputfile endl;return;fstream file; 創(chuàng)建文件流file.open(argv2,ios:in |ios:out |ios:binary |ios:trunc);打開指定輸出文件,讀寫方式為以二進(jìn)制方式可讀可寫,如文件存在則清除其for(int i=0; i 7; i+) file.put(ch
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【正版授權(quán)】 ISO 16179:2025 EN Footwear - Critical substances potentially present in footwear and footwear components - Determination of organotin compounds in footwear materials
- 湖南文理學(xué)院芙蓉學(xué)院《建筑材料學(xué)B》2023-2024學(xué)年第二學(xué)期期末試卷
- 中國計(jì)量大學(xué)《地方教學(xué)名師課堂》2023-2024學(xué)年第二學(xué)期期末試卷
- 撫順職業(yè)技術(shù)學(xué)院《感覺統(tǒng)合訓(xùn)練》2023-2024學(xué)年第一學(xué)期期末試卷
- 河南醫(yī)學(xué)高等專科學(xué)?!稄V告理論與實(shí)務(wù)》2023-2024學(xué)年第二學(xué)期期末試卷
- 古代描寫英雄的詩句
- 公共交通車輛更新淘汰制度
- 第3課 “開元盛世”教案2024-2025學(xué)年七年級歷史下冊新課標(biāo)
- 煙道伸縮節(jié)施工方案
- 2025年醫(yī)藥產(chǎn)業(yè)布局洞察:數(shù)據(jù)解析A股市場走勢與板塊表現(xiàn)
- 《慢性阻塞性肺病的》課件
- 2023年沈陽職業(yè)技術(shù)學(xué)院單招數(shù)學(xué)模擬試題附答案解析
- 《企業(yè)經(jīng)營統(tǒng)計(jì)學(xué)》課程教學(xué)大綱
- 六年級下冊道德與法治課件第一單元第三課
- 房地產(chǎn)合約規(guī)劃分類明細(xì)
- 八年級物理(上冊)知識點(diǎn)整理 (2)
- 高中物理萬有引力定律知識點(diǎn)總結(jié)與典型例題
- 吊裝平臺施工方案
- 歐姆定律-中考復(fù)習(xí)課件
- 中學(xué)語文課程標(biāo)準(zhǔn)研究最新試題及答
- 如何激發(fā)學(xué)生學(xué)習(xí)物理的興趣PPT課件
評論
0/150
提交評論