繼續講解!先回顧2018年的場景!先教做人再教知識!強烈呼吁電工院的學生在物電樓上廁所的時候區分大小便池,小便請上小便池,大便去大便池。還有請記得便后沖水。當然不是所有的學生都不懂這些道理,但就是有那么一些低素質的學生連水都不沖。當然也會有一些老師居然也有類似的不文明行為。不知道這種素質的年輕人走入社會后會變成什么樣?這就是發生在大學校園里面的現象。不要覺得奇怪,這種現象已經持續很多年了,至少在我回歸學校的那一年就有這樣的現象。有一點小小的進步也值得曬一下。廁所里面貼了請不要抽煙的告示,抽煙的人確實少了很多。但依舊還有那種厚顏無恥的人在廁所里面抽煙。請大家看見這樣的人一起來聲討他,督促這種人改掉壞習慣。同學們應該具備基本的廉恥之心。希望在學校期間能不斷的提升素質,打造一個好的校園環境。呼吁大家文明使用衛生間!2022年11月,回看本段內容,覺得當年自己是不是有點“二”?真把自己當成育德之人了?做夢吧!我應該沒有這方面的能力,半點能力都沒有!好好把課上完就很不錯了!學生能聽進多少呢?本人只能苦笑,想傳播知識還是到網上吧!回歸正題!
上堂課給出了示例程序讓同學們進行消化。讓我驚喜的是我的學生居然想出不同的辦法來實現CRC,這就是一種進步,真正的思考了,掌握了!為15級的小楊同學點贊。現在已經很多年沒有碰到好學的人了。給出他當年寫的程序作為參考。首先是函數程序。
%%%%%%% 模二除法函數模塊程序 %%%%
%%%%% File:function_two_div.m %%%%%
%%% Date:2018-10-24 Author:楊子遜 %%%%%
%*************** 函數名 *************%
function [ remainder ] = function_two_div(data_crc,crc_code)
%%%%%%%%% 程序說明 %%%%%%%%%%%
% 將輸入的數組data_crc與crc_code進行模二除法運算,并輸出余數
% 操作對象僅限為二進制數據的數組,輸出的余數前n位位真正的余數
% (n位CRC位數)
% 比如:CRC-16的n為16
%%%%% 變量名定義 %%%%
%%% 輸出變量
% remainder :余數
%%% 輸入變量
% data_crc = 模二除法被除數
% crc_code = 模二除法除數
%----------------- 程序主體 ------------------%
data_length = length(data_crc); % 被除數長度
code_length = length(crc_code); % 除數長度
%%% 將除數補0,直到與被除數一樣長,方便進行異或運算
crc_code = [crc_code zeros(1,data_length-code_length)];
%%% 進行模二除法運算循環
remainder = data_crc;
for i = 1:data_length - code_length + 1
if remainder(1) == 1
remainder = xor(remainder,crc_code);
end
remainder = [remainder(2:end) remainder(1)];
end
%%% 循環結束
end
%%% 結論
%% 本函數能進行CRC專用的模二除法運算。


沒想到小黃車都撐不過2018年。
社會素質不提高,
共享類事物很難健康發展。
校園里面都存在大量的被破壞的共享單車。
當下,學生的素質真堪憂!回看本段,一直為我院學生的學習狀況發愁!愁也解決不了問題,也就默默的寫文章吧!

繼續給出測試函數程序!
%%%%% CRC_TEST %%%%%%%
%%%% File:crc_test_sim1.m %%%%
%%% Date:2018-10-24 Author:楊子遜 %%
%********** 程序說明 *************%
% 本程序完成測試模二除法函數的功能,并用該函數進行
% CRC校驗碼的生成,最后測試校驗是否準確
% 軟件版本 matlab 6.5
%************** 程序主體 *************%
clc;
% 生成原始數據
%data_origin = randi(2,1,10)-1; % 2016b以上版本使用
data_origin = randint(1,20); % 舊版本使用
% 生成CRC—16的16位碼,參照G(x) = x^16+x^12+x^5+1
crc_origin_code = [1 0 0 0 1 0 0 0 0 0 0 1 0 0 0 0 1];
%%% 生成CRC-16的校驗碼
% 給原始數據添加16個0在末尾
data_zero = [data_origin zeros(1,16)];
% 生成CRC校驗碼
crc_code = function_two_div(data_zero,crc_origin_code);
crc_code = crc_code(1:16);
% 組幀
data_crc_result = [data_origin crc_code];
% 如果出錯 (假設第五位出錯)
data_crc_error_result = data_crc_result;
data_crc_error_result(5) = ~data_crc_error_result(5);
%%%%%% 接收端檢驗
% 若remainder為全零數組,則代表信息無出錯
remainder = function_two_div(data_crc_result,crc_origin_code)
% 若remainder_error_result數組不全為零,則代表CRC校驗出信息有錯誤
remainder_error_result = function_two_div(data_crc_error_result,crc_origin_code)
%*********** END OF PROGRAM ***********%
%% 結論
%% 本程序可以完成CRC-16校驗有效性的測試。

未完,待續!

修訂記錄
20181113 完成初稿;
20221114 修訂內容v2;
-
通信網絡
+關注
關注
22文章
2105瀏覽量
54380
原文標題:計算機通信與網絡v2 實驗課程(11)
文章出處:【微信號:gh_30373fc74387,微信公眾號:通信工程師專輯】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
由順序主導的計算機體系
RDMA設計37:RoCE v2 子系統模型設計
香蕉派 BPI-2K3000 工業計算機開發板采用龍芯2K3000芯片設計
龍架構計算機系統能力核心課程教學研討會圓滿舉行
【作品合集】賽昉科技VisionFive 2單板計算機開發板測評
2025年地方高校計算機類專業核心課程暑期師資培訓成功舉辦
自動化計算機經過加固后有什么好處?
【VisionFive 2單板計算機試用體驗】環境搭建與點燈實驗
自動化計算機的功能與用途
工業計算機與商用計算機的區別有哪些
權威評測:Orange Pi RV2等5?款?RISC-V?單板計算機測試-性能、基準測試、功能和見解
計算機通信與網絡v2 實驗課程(11)
評論