• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      網(wǎng)絡(luò)可靠遠(yuǎn)程單工通信指令傳輸系統(tǒng)

      2015-03-19 17:22:12
      關(guān)鍵詞:字庫(kù)二進(jìn)制校驗(yàn)

      1 單工通信

      信息在網(wǎng)絡(luò)通道的傳輸方式有單工方式、半雙工方式和全雙工方式。單工方式,是指信息只能從通道的一端向另一端傳輸?shù)姆绞?。在單工通道中,信息只能從?guī)定的發(fā)送端傳輸?shù)揭?guī)定的接受端,而不能從接收端發(fā)送信息到發(fā)送端。

      2 可靠TCP傳輸

      2.1 服務(wù)端完成功能

      (1)Winsock套接字庫(kù)加載,在此加載 Winsock套接字庫(kù)的版本號(hào)為2.2;

      (2)確認(rèn)Winsock套接字是否支持2.2版本;

      (3)創(chuàng)建TCP套接字:sockConn;

      (4)將創(chuàng)建的套接字綁定到本地IP地址和端口號(hào)上;

      (5)將套接字設(shè)置為監(jiān)聽(tīng)模式,等待客戶端的請(qǐng)求;

      (6)接收客戶端的連接請(qǐng)求,并驗(yàn)證連接是否成功;

      (7)關(guān)閉服務(wù)器端套接字;

      (8)終止服務(wù)器端套接字庫(kù)。

      2.2 客戶端完成功能

      (1)Winsock套接字庫(kù)加載,在此加載 Winsock套接字庫(kù)的版本號(hào)同樣為2.2;

      (2)確認(rèn)Winsock套接字是否支持2.2版本;

      (3)創(chuàng)建TCP套接字:sockConn;

      (4)向服務(wù)器端發(fā)送連接請(qǐng)求,并驗(yàn)證連接是否成功;

      (5)關(guān)閉服務(wù)器端套接字;

      (6)終止服務(wù)器端套接字庫(kù)。

      3 網(wǎng)絡(luò)信息傳輸?shù)陌踩珕?wèn)題

      網(wǎng)絡(luò)信息主要是以高低電壓或電波負(fù)載由“1”和“0”組成的二進(jìn)制字符串傳輸?shù)?。信息的傳輸過(guò)程容易受到客觀或主觀因素影響,造成傳輸信息的變化,如二進(jìn)制字符串中“1”、“0”順序變化和置反、長(zhǎng)度的增減、丟失、重傳等,從而無(wú)法保障數(shù)據(jù)完整性、正確性。

      現(xiàn)在的網(wǎng)絡(luò)大部分使用TCP/IP網(wǎng)絡(luò)協(xié)議,這樣的網(wǎng)絡(luò)是開(kāi)放式的,傳輸?shù)膬?nèi)容容易被截獲,根據(jù)報(bào)文的格式分析截獲數(shù)據(jù)包的內(nèi)容可獲得一些有用的信息,也可以修改數(shù)據(jù)包內(nèi)容重發(fā)數(shù)據(jù)以欺騙接收端。對(duì)此,常采用校驗(yàn)、糾錯(cuò)和數(shù)據(jù)加密技術(shù)保障數(shù)據(jù)包所代表的意義僅被接收者所識(shí)別,其中檢驗(yàn)技術(shù)主要是檢查接收的數(shù)據(jù)包是否出錯(cuò),糾錯(cuò)技術(shù)完成數(shù)據(jù)包出錯(cuò)的糾正,還原源數(shù)據(jù),數(shù)據(jù)加密技術(shù)防止數(shù)據(jù)包截獲者了解數(shù)據(jù)包的含義。校驗(yàn)、糾錯(cuò)和數(shù)據(jù)加密技術(shù)可采用的方法有很多,特別是量子數(shù)據(jù)加密技術(shù)的出現(xiàn)。

      檢驗(yàn)是糾錯(cuò)的前提,檢驗(yàn)技術(shù)是數(shù)據(jù)發(fā)送方根據(jù)雙方的協(xié)定對(duì)數(shù)據(jù)進(jìn)行處理生成校驗(yàn)結(jié)果并存儲(chǔ)在數(shù)據(jù)包中,而數(shù)據(jù)接收方同樣根據(jù)雙方的協(xié)定對(duì)數(shù)據(jù)進(jìn)行處理生成校驗(yàn)結(jié)果,把接收方生成的校驗(yàn)結(jié)果和發(fā)送方生成的校驗(yàn)結(jié)果進(jìn)行對(duì)比,根據(jù)比較結(jié)果判斷數(shù)據(jù)是否出錯(cuò),如果出錯(cuò)判斷出數(shù)據(jù)出錯(cuò)的位置。

      4 海明碼原理

      海明碼是一種可以對(duì)一串只包含0和1的序列進(jìn)行糾錯(cuò)一位的編碼。該編碼是在0和1序列的2^i(i=0,1,2,3…)位置處增加校驗(yàn)位,使碼距均勻拉大。

      增加的校驗(yàn)位數(shù) r由 0和 1序列的信息位數(shù) k確定,要求2^r>=k+r+1,海明碼是由信息位和校驗(yàn)位構(gòu)成的編碼,長(zhǎng)度為k+r,如k=7,則r=4。校驗(yàn)位的值是由相關(guān)信息位的值異或所確定的,相關(guān)信息位又是由位置號(hào)確定的。把位置號(hào)數(shù)值轉(zhuǎn)換成二進(jìn)制的0和1序列,其中數(shù)值位為1的位置號(hào)就是所關(guān)聯(lián)的校驗(yàn)碼的位置號(hào)。對(duì)于所有校驗(yàn)位的值初始化為 0,從第一個(gè)校驗(yàn)位開(kāi)始依次順序判斷其所有相關(guān)聯(lián)的位置號(hào)的數(shù)值(0或1)中1的個(gè)數(shù)gs,如果gs為偶數(shù)則賦值為0,gs為奇數(shù)則賦值為1,這樣就生成海明碼。

      糾錯(cuò)時(shí),是把校驗(yàn)位的二進(jìn)制轉(zhuǎn)換成十進(jìn)制數(shù)值 err。如果 err等于0,則說(shuō)明接受的0和1序列沒(méi)有出錯(cuò),否則接受的0和1序列中有一位出錯(cuò),而err數(shù)值就是出錯(cuò)的位置號(hào),對(duì)該位置號(hào)的信息位取反,就得到正確的海明碼,再把海明碼中在2^i(i=0、1、2、3…)位置號(hào)的數(shù)據(jù)刪去后,剩下的就是海明碼生成前的0和1序列。

      海明碼的生成:如一個(gè)海明碼的7個(gè)信息位為d0,d1,d2,d3,d4,d5,d6,則4個(gè)校驗(yàn)位為r0,r1,r2,r3;生成的海明碼順序?yàn)閔1 h2 h3 h4 h5 h6 h7 h8 h9 h10 h11。r0=h1=h1 h3 h5 h7 h9 h11的異或,r1=h2=h2 h3 h6 h7 h10 h11的異或,r2=h4=h4 h5 h6 h7 的異或,r3=h8=h8 h9 h10 h11的異或。

      分析r3的相關(guān)位置號(hào):由于二進(jìn)制e=1000等于8,所以與r3關(guān)聯(lián)的位置號(hào)從第8位開(kāi)始,把9轉(zhuǎn)換成二進(jìn)制為1001,右起數(shù)第四位為1,所以與r3相關(guān),再把10轉(zhuǎn)換成二進(jìn)制為1010,右起數(shù)第四位為1,所以也與r3相關(guān),順序計(jì)算就能得出相關(guān)的位置號(hào)。

      海明碼的校驗(yàn)(對(duì)上面生成的海明碼進(jìn)行校驗(yàn)):e0=h1 h3 h5 h7 h9 h11的異或,e1=h2 h3 h6 h7 h10 h11的異或,e2=h4 h5 h6 h7的異或,e3=h8 h9 h10 h11的異或。

      轉(zhuǎn)換二進(jìn)制計(jì)算十進(jìn)制err=e3*2^3+e2*2^2+e1*2^1+e0*2^0。如果err等于0,則沒(méi)出錯(cuò);原來(lái)的0和1序列是:d0,d1,d2,d3,d4,d5,d6。如果err等于5,則說(shuō)明在海明碼的第5位置號(hào)的數(shù)據(jù)出錯(cuò);如果該數(shù)據(jù)位的值是0,則改為1;如果該數(shù)據(jù)位的值是1,則改為0。

      例:7個(gè)信息位為1011011,4個(gè)校驗(yàn)位為r0,r1,r2,r3。其r0=0 1 0 1 0 1的異或;r1=0 1 1 1 1 1的異或;r2=0 0 1 1的異或;r3=0 0 1 1的異或。所以r0 r1 r2 r3等于1100,生成的海明碼為11100110011。

      海明碼校驗(yàn):把上面生成的海明碼的5為變?yōu)?,得錯(cuò)誤的海明碼為1110 1 110011。e0=1 1 1 1 0 1的異或,e1=1 1 1 1 1 1的異或,e2=0 1 1 1的異或,e3=0 0 1 1的異或,e0 e1 e2 e3的值是1010,err= 0*2^3+1*2^2+0*2^1+1*2^0=5,把第5位置號(hào)的數(shù)據(jù)“1”取反得“0”,再把校驗(yàn)碼刪除的正確的信息序列為1011011。對(duì)于上述的“異或”運(yùn)算,在程序編程中運(yùn)用數(shù)值的十進(jìn)制相加計(jì)算其總和為cout,再用cout對(duì)2取余,如果余數(shù)為1則賦值為1,否則賦值為0來(lái)代替實(shí)現(xiàn)。

      5 服務(wù)端

      5.1 服務(wù)端的功能和流程

      功能:(1)用戶的登錄;(2)與客戶端的可靠連接;(3)接受輸入的指令;(4)完成海明碼的生成和發(fā)送;(5)發(fā)送錯(cuò)一位的海明碼。

      流程:(1)進(jìn)入主界面并單擊登錄轉(zhuǎn)到登錄窗口,輸入用戶名和密碼;(2)將用戶名和密碼記錄在控件的相關(guān)成員變量;(3)連接access數(shù)據(jù)庫(kù),判斷用戶是否存在,如果用戶存在則進(jìn)入下一個(gè)流程,用戶不存在則返回流程1;(4)返回主界面輸入指令,如 a1,再單擊發(fā)送指令;(5)存儲(chǔ)指令到控件的成員變量m_Zhi1ing中;(6)在編輯框顯示發(fā)送的指令。

      5.2 舉例檢查海明校驗(yàn)

      選擇了3個(gè)不同類型字符:一個(gè)是數(shù)字字符‘1’;一個(gè)是特殊字符‘@’;一個(gè)是字符‘z’。該函數(shù)分3次發(fā)送了3個(gè)錯(cuò)誤的海明碼“1@z”,供客戶端接收校驗(yàn)。其中‘1’的錯(cuò)誤在第四位,把本應(yīng)為‘0’的數(shù)據(jù)改為‘1’;‘@’的錯(cuò)誤發(fā)生在第 11 位,把本應(yīng)為‘1’的數(shù)據(jù)改為‘0’;‘z’的錯(cuò)誤發(fā)生在第 6位,把本應(yīng)為‘0’的數(shù)據(jù)改為‘1’;如下:

      char CuoWuHm1[12]={'0','0','1','1','0','0','0','0','1','1','0'};//字符數(shù)組的內(nèi)容是 1 低4位出錯(cuò),應(yīng)為0

      char CuoWuHm2[12]={'1','1','0','0','0','0','0','1','0','0','0'};//字符數(shù)組的內(nèi)容是 @ 低11位出錯(cuò),應(yīng)為1

      char CuoWuHm3[12]={'0','1','0','0','1','1','1','1','1','1','1'};//字符數(shù)組的內(nèi)容是 z 第6位出錯(cuò),應(yīng)為0

      6 客戶端功能和流程

      6.1 功能

      (1)與服務(wù)端進(jìn)行TCP可靠連接;(2)接收服務(wù)端發(fā)來(lái)的海明碼,并進(jìn)行海明校驗(yàn);(3)校驗(yàn)后顯示正確的指令。

      6.2 流程

      (1)輸入服務(wù)器IP地址;(2)單擊:“連接”按鈕;(3)在列表框中顯示海明校驗(yàn)后的指令。

      猜你喜歡
      字庫(kù)二進(jìn)制校驗(yàn)
      用二進(jìn)制解一道高中數(shù)學(xué)聯(lián)賽數(shù)論題
      No.2 喜茶聯(lián)合漢儀字庫(kù)推出微型書(shū)和書(shū)簽
      有趣的進(jìn)度
      二進(jìn)制在競(jìng)賽題中的應(yīng)用
      某型號(hào)產(chǎn)品的字庫(kù)遷移優(yōu)化設(shè)計(jì)
      電子世界(2018年7期)2018-04-26 08:51:35
      爐溫均勻性校驗(yàn)在鑄鍛企業(yè)的應(yīng)用
      大型電動(dòng)機(jī)高阻抗差動(dòng)保護(hù)穩(wěn)定校驗(yàn)研究
      基于加窗插值FFT的PMU校驗(yàn)方法
      鍋爐安全閥在線校驗(yàn)不確定度評(píng)定
      相同字庫(kù)條件下激光打印文件特征的變化規(guī)律和特點(diǎn)
      樟树市| 镇沅| 辉县市| 玉山县| 桐庐县| 凯里市| 昌乐县| 汕尾市| 高陵县| 五指山市| 屏东市| 喀喇| 惠安县| 济宁市| 陇川县| 泾阳县| 昆山市| 牙克石市| 遵义县| 仁化县| 曲阜市| 三门峡市| 贵溪市| 新巴尔虎右旗| 莫力| 保亭| 蓬安县| 浮山县| 洛隆县| 霍山县| 澳门| 通城县| 白城市| 高陵县| 华亭县| 南昌市| 兴海县| 兰溪市| 工布江达县| 栾城县| 嫩江县|