版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、成 績(jī) 評(píng) 定 表學(xué)生姓名班級(jí)學(xué)號(hào)1103050403封裝Ethernet 幀組長(zhǎng)簽字: 年 月3日課程設(shè)計(jì)任務(wù)書(shū)學(xué) 院 專(zhuān) 業(yè)其中,EncapFrame為程序名,input_file為輸入數(shù)據(jù)文件,output_file 為輸出文件。2) 輸出內(nèi)容:Ethernet 幀的各字段內(nèi)容。星期四:軟件總體調(diào)試年 12月 日 年 月 日 年 12月 日1 課程設(shè)計(jì)目的課程設(shè)計(jì)的主要目的是通過(guò)封裝2 課程設(shè)計(jì)要求 3 相關(guān)知識(shí)幀EthernerV2.0 幀前 定 目 的 地 長(zhǎng)度 字 校驗(yàn) 字址段段段7B) 1B) ) ) 2B) 4B) 7)前導(dǎo)碼與幀前定界符字段位(7B 為 位 11 )目的地址和
2、源地址DA在 或6B 0 11)長(zhǎng)度字段 ,最大長(zhǎng)度為)數(shù)據(jù)字段 )校驗(yàn)字段FCS 8 kr 碼)CRC 1 ;的信息多項(xiàng)式為。 為 。 ,如果余數(shù)為)CRC以 K r-1r。)循環(huán)冗余校驗(yàn)碼的特點(diǎn) ,不僅能檢查出離散錯(cuò)誤, 4 課程設(shè)計(jì)分析While(!in.eof()in.get(a);bufj=a;j+;infile.open(argv1,ios:binary);infile.seekg(0,ios:end);short length=(short)infile.tellg();file.put(char(length/256);file.put(char(length%256); 46
3、B 0 及 為 。if(len=1500)len=0;if(len46)for(i=len;i1;if(a) regs.val=0 x8408; 8 8 8的 8) 。) ) ) ) ) ) ) ) ) ) ) ,程序流程圖:以二進(jìn)制、可讀寫(xiě)方式打開(kāi)輸出文件寫(xiě)入前導(dǎo)碼和這界定符獲取當(dāng)前文件指針寫(xiě)入目的地址和源地址 ,并將長(zhǎng)度值寫(xiě)入輸出文件N填充( )字節(jié)0Y添加1字節(jié)0,用于CRC計(jì)算計(jì)算CRC值,填充校驗(yàn)字段風(fēng)轉(zhuǎn)完成,關(guān)閉輸出文件結(jié)束6 程序代碼#include#include#include#includevoid main(int argc,char*argv)/如果輸入命令行不正確,則
4、輸出提示后退出。if(argc!=3)coutendl請(qǐng)按以下格式輸入:framer inputfile outputfileendl;exit(0);/打開(kāi)指定的輸出文件,以二進(jìn)制方式打開(kāi)并可讀可寫(xiě),如文件存在,則清除其內(nèi)容。fstream file(argv2,ios:out|ios:in|ios:binary|ios:trunc,0);for(int i=0;i8);file.put(char(length&0 xff);/將文件長(zhǎng)度值按照逆序?qū)懭氲捷敵鑫募拈L(zhǎng)度字段中。file.write(data,length);/將 data內(nèi)容寫(xiě)入到輸出文件中。/如果輸入文件長(zhǎng)度不足 B,則用補(bǔ)
5、足 B。if(length46)for(int j=length;j46;j+)file.put(char(0 x00);file.put(char(0 x00);/將數(shù)據(jù)字段后添加個(gè)file.seekg(8,ios:beg);/將讀指針指向目的地址字段,從此處開(kāi)始 CRC計(jì)算unsigned char ch;/ch用來(lái)保存讀入的字符。unsigned char crc=char(0 x00);/余數(shù)初始值為。while(1)/進(jìn)行 CRC計(jì)算file.get(ch);if(ch=0 xff)/判斷是否到了文件結(jié)尾,如果是,則退出循環(huán)。break;for(i=0;i8;i+)/對(duì)入讀入的字符的位分別處理。if(0 x80=(crc&(0 x80)/當(dāng)前余數(shù)最高位為,需要進(jìn)行除法運(yùn)算。crc=(crc7);/將輸入數(shù)據(jù)相應(yīng)的值遞補(bǔ)到余數(shù)末位。crc=crc(0 x07);/進(jìn)行除法運(yùn)算,即與除數(shù)的低位相異或。else/當(dāng)前余數(shù)的最高位為,不需要進(jìn)行除法運(yùn)算。crc=(crc7);/將輸入數(shù)據(jù)相應(yīng)位的值遞補(bǔ)到余數(shù)末位。ch=ch1;/讀到的字符左移位,使數(shù)據(jù)下一位作為輸入位。file.clear();file.seekp(-1,ios:end);/將寫(xiě)指針移到輸出文件的最后。file.put(crc);/寫(xiě)入 crc碼。file.clo
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 業(yè)務(wù)銷(xiāo)售工作總結(jié)12篇
- 認(rèn)知障礙患者激越行為非藥物管理
- 醫(yī)院病案面試題庫(kù)及答案
- 高中語(yǔ)文整本書(shū)閱讀與跨文化交際能力培養(yǎng)的研究教學(xué)研究課題報(bào)告
- 面試題及答案醫(yī)院
- 地府公務(wù)員面試題及答案
- 佛岡中醫(yī)院面試題及答案
- 審計(jì)部長(zhǎng)考試題含答案
- 臨川區(qū)城市發(fā)展投資集團(tuán)有限公司等3家區(qū)屬國(guó)企2025年公開(kāi)招聘員工15人筆試參考題庫(kù)附帶答案詳解(3卷合一版)
- 2025二級(jí)建造師《管理》真題下載-二級(jí)建造師
- 測(cè)繪安全生產(chǎn)作業(yè)規(guī)范
- 2026年焦作大學(xué)單招職業(yè)適應(yīng)性考試必刷測(cè)試卷必考題
- 安全生產(chǎn)先進(jìn)評(píng)選方案
- 國(guó)開(kāi)《廣告調(diào)查與預(yù)測(cè)》形考作業(yè)1-4答案
- 鈑金折彎工藝培訓(xùn)課件
- 肛門(mén)指檢課件
- 城市更新交通系統(tǒng)優(yōu)化實(shí)施技術(shù)方案
- 高一年級(jí)分科主題班會(huì)+課件-2025-2026學(xué)年上學(xué)期
- 水果店代加工合同協(xié)議書(shū)
- 2025年南京市事業(yè)單位招聘考試衛(wèi)生類(lèi)預(yù)防醫(yī)學(xué)專(zhuān)業(yè)知識(shí)試卷
- 固定污染源采樣課件
評(píng)論
0/150
提交評(píng)論