主頁 >  其他 > BCH信道編譯碼

BCH信道編譯碼

2020-09-24 20:46:21 其他

通信的目的是要把對方不知道的訊息即時可靠地(有時還要秘密地)傳送給對方,當信道中存在干擾,可能使發送的訊息出錯,數字通信中,通常使用糾錯碼技術來進行差錯控制,這樣可以提高資料傳輸的可靠性,

BCH碼就是一種應用廣泛的能糾正多重錯誤的分組碼,具有極佳的糾錯性能,本文對BCH碼的原理進行深入分析,介紹BCH的編解碼原理,重點介紹了BCH編碼解碼的計算方法以及BCH編碼的性能分析,最后,本文采用MATLAB撰寫相應的BCH編解碼代碼進行仿真和誤碼率分析,并在Simulink中搭建BCH模塊進行誤碼率統計分析,本文所作的研究成果具有一定的科研價值,為BCH的進一步研究或在硬體系統上的實作提供了良好的理論基礎,

1.1 本課題研究背景

數字信號在傳輸系統中傳輸時,不可避免受到各種因素的干擾,使到達接收端的數字信號中混有噪聲,從而引發錯誤判決,為了抗擊干擾,必然要利用糾錯碼的差錯控制技術,

糾錯碼的分類有以下幾種:

·按照對資訊序列處理方式的不同,分為分組碼與卷積碼兩大類,在分組碼中按照碼的結構特點,又可分為回圈碼和非回圈碼,

·根據資訊位與校驗位之間的關系分為線性碼與非線性碼,

·按照適用的差錯型別,分成糾隨機差錯碼和糾突發差錯碼兩種,也有介于中間的糾隨機/突發差錯碼,

·按構碼理論,有代數、幾何、算術、組合碼等,

除了上述分類外,有多少觀察問題的角度,就有多少分類方法,比如,按每個碼元的取值,可以分為二進制碼與多進制碼;按碼字之間的關系,有回圈碼和非回圈碼之分;不同的分類方法只是從不同的角度抓住碼的某一特性加以歸類而己,并不能說明某個碼的為全部特性,比如某線性碼可能同時又是分組碼,回圈碼,糾突發差錯碼,代數碼,二進碼,

1.2 線性分組碼和回圈碼

線性分組碼是分組碼中最重要的一類碼,用(n,k)表示,其中n表示碼長,k表示資訊位數目,n-k=r表示校驗位數目,二進制(n,k)線性分組碼可以定義為GF(2)域上的n維線性空間Vn中的一個k維子空間,

在線性分組碼中有三個重要引數,分別為碼率、碼的漢明距離和漢明重量,碼率R=k/n,它說明了分組碼傳輸資訊的有效性,碼的漢明距離指兩個碼字對應位上碼元不同的個數,簡稱距離,漢明重量指碼字中非零碼元的個數,簡稱重量,在(n,k)線性分組碼中,將任兩個碼字距離的最小值稱為最小距離d0,由于線性分組碼是群碼,由群碼的封閉性可知,若碼字C1,C2均是(n,k)碼的碼字,則C1+C2也必是該分組碼的另一碼字,可見(n,k)線性分組碼的最小距離等于非零碼字的最小重量,最小距離d,直接在理論上決定了該碼的檢錯和糾錯能力,

回圈碼是線性分組碼中最重要的一個子類,它的代數結構比較清晰,編譯碼相對于其它碼來講簡單且易于實作,因此回圈碼在差錯控制系統中得到廣泛的應用,BCH碼就是回圈碼中很重要的一類碼,

在GF(2)上的n維線性空間氣中,若是的一個k維子空間,對任何,有,則是回圈碼,

由編碼理論推匯出的回圈碼糾錯能力只是一個理論值,在現實中能否達到這個理論值還與所用的譯碼方法有關,一個好的譯碼方法,不僅應使糾錯能力能夠達到理論極限,而且應能高速度、低成本地實作,因為速度和成本有時會成為某種碼能否實用的決定性因素,

譯碼電路通常要比編碼電路復雜得多,因此我們說,理論的復雜性常體現在編碼上,而工程的復雜性常體現在譯碼上,從對輸入信號的量化程度,譯碼可分為硬判決譯碼(BSC信道)和軟判決譯碼(DMC信道),

軟判決由于采用了大于2的量化級數,能更充分地利用接收信號包含的資訊,與硬判決相比,在AWGN信道、10-2-10幣誤碼率范圍時可有2dB的編碼增益,因此代表了譯碼的發展方向,從差錯控制方式,譯碼可分為糾錯和檢錯兩種,糾錯譯碼器總有輸出,但有兩種可能:一是收碼的差錯數量在糾錯能力之內,譯碼器認定的正確真的是正確,二是差錯數量超出糾錯能力,譯碼器認定的正確其實是錯的,由于難以判斷差錯數量是否超出糾錯能力,糾錯譯碼器不能保證輸出資料完全可靠,所以糾錯譯碼器常用于數字語音、影像、視頻信號的前向糾錯(FEC)中,

1.3 BCH編碼的研究和應用

BCH碼于1959年由霍昆格姆、1960年由博和雷-查德胡里三人分別提出,并以這三個發現者的名字命名,BCH碼是迄今為止所發現的一類很好的線性糾錯碼類,它的糾錯能力很強,特別在中等和短碼長條件下,BCH碼的性能接近理論上的最佳值,并且構造方便,編碼簡單,特別是它具有嚴密的代數結構,在代數編碼理論中起著重要作用,BCH碼是迄今為止研究得最為詳盡、了解得最為透徹、取得成果最多的一類線性分組碼,

1960年彼得遜從理論上解決了二進制BCH碼的譯碼演算法,奠定了BCH碼譯碼的理論基礎,稍后,格林斯坦和齊勒爾把它推廣到多進制,1966年伯利坎普利用迭代演算法譯BCH碼,從而大大加快了譯碼速度,從實際上解決了BCH碼的譯碼問題,由于BCH碼性能優良,結構簡單,編譯碼設備也不太復雜,使得它在實際使用中受到工程技術人員的歡迎,是目前用得最廣泛的碼類之一,

在英國模擬移動通信系統中,基站采用了具有糾正2位隨機錯誤能力的BCH(40,28)碼,移動臺采用了可糾正2位隨機錯誤的BCH(48,36)碼;在我國無線尋呼系統中,采用了BCH(31,21)碼加一位奇偶校驗位作為FEC方式;在視頻編碼協議H.261、H.263中采用了BCH(511,493)碼進行視頻糾錯,

第三章 BCH碼理論簡介

3.1 BCH碼簡介

BCH碼是回圈碼的一個重要子類,它具有糾多個錯誤的能力,BCH碼有嚴密的代數理論,是目前研究最透徹的一類碼,它的生成多項式與最小碼距之間有密切的關系,人們可以根據所要求的糾錯能力t很容易構造出BCH碼,它們的譯碼器也容易實作,是線性分組碼中應用最普遍的一類碼,

3.1.1伽羅華域

編碼原理中最基本、最重要的域是二元伽羅華域GF(2)及二元擴域GF(2m),有限正數集合F={0,1,2,3,…,q-1}(q是素數)在模q加、模q乘運算下構成一個q階有限域,又稱伽羅華(Galois)域,記為GF(q),當q=2時,就是二元域GF(2),

在有限域中定義的運算滿足閉合性,即有限域GF(q)上任意兩個元素A、B對運算⊙滿足:A⊙B∈GF(q),

如果p是素數,m是正整數,GF(2m)的最小子域是GF(p),p稱為GF(2m)的特征,在特征為2的伽羅華域中,任一域元素B有-B=B,

設B為GF(q)上的任一元素,則B=Bq,

每個伽羅華域GF(q)至少包含有一個本原元素α,且GF(q)上除零以外的其它任意域元素均可表示為本原元素的乘冪,

任一有限域均可由一本原多項式來構成,有限域的任一多項式對本原多項式求模,可得到一個次數低于本原多項式次數的多項式,即有限域的元素,

·加法運算

域元素的加法運算,即根據域元素表格,轉換成對應的m-1次多項式系數(m重矢量),兩個域元素相加等效于兩個m-1次多項式的同次項系數模2相加,即異或運算,

·乘法運算

乘法有三種實作途徑:

第一就是把域元素對應的多項式系數直接移位,比如a×b,只要找到b對應的冪次,假設是x,將a左移x次,每次左移之前判斷移位前的值高位是否為1,如果是1,移位后與本原多項式除高次冪后的多項式相加;

第二種方法就是從b的高位開始,如果b7=1,將a左移7次,如果b6=1,將前面左移結果再左移6次,

第三種方法是直接把域元素的指數相加求模2m-1,這里采用第三種方法,

·求模運算

因為2^m-1轉換成二進制數永遠是全1,所以根據這個特點,可以用下面的方法求模,把二進制形式的數從低位起每m位元分割,高位不滿m位元用0補齊,然后高位段每出現一個1,就把高位減去1,然后把低位加1,這樣回圈操作直到高位段變成全0,

3.3 BCH譯碼理論介紹

BCH碼的譯碼可以分為時域譯碼和頻域譯碼兩種,

頻域譯碼是把碼字看作一個時域數字序列,對其進行有限域的離散傅氏變換(DFT)將它變換到頻域,然后利用其頻域特點譯碼,這樣通過對頻域伴隨式的運算解出指示差錯位置的關鍵方程,再通過離散傅氏反變化還原成時域的糾錯信號,

時域譯碼是把碼字看作時間軸上的信號序列,利用碼的代數結構進行譯碼,由于取有限域離散傅氏變換增加了復雜度,頻域譯碼的實作一般較時域譯碼復雜,因此采用快速傅氏變換(FFT)的頻域譯碼只在某些特殊情況下對特定碼長(比如n等于2的冪次)的譯碼優于時域譯碼,而在一般情況下應用最廣泛的是時域譯碼,其中BCH譯碼器的基本結構如下所示:

圖3-1 BCH譯碼器基本結構框圖

通常,我們在MATLAB中設計演算法分三個步驟:

·STEP1:由接收到的R(x)計算出伴隨式S;

·STEP2:由伴隨式得出錯誤圖樣E(x);

·STEP3由R(x)-E(x)得到估值碼字c(x),

5.2 BCH編碼的系統仿真

我們根據前面的理論分析,撰寫MATLAB代碼,這里,我們根據要求,進行(511,493)(4095,4035)兩種引數的BCH編碼,其MATLAB編碼函式如下所示:

function code=bchencoder(data,genpoly,n,k);

bb=zeros(1,n-k);

for i=k:-1:1

feedback = xor(data(i), bb(n-k));

if feedback~=0

for j=n-k:-1:2

if genpoly(n-k-j+2)~=0

bb(j)=xor(bb(j-1),feedback);

else

bb(j)=bb(j-1);

end

end

bb(1)=feedback;

else

for j=n-k:-1:2

bb(j)=bb(j-1);

end

bb(1)=feedback;

end

end

code=[bb,data];

我們在頂層對其進行呼叫,呼叫程序如下代碼:

for j=1:nwords

encoded_data((j-1)*n+1:(j-1)*n+n)=bchencoder(message((j-1)*k+1:(j-1)*k+k),genpoly,n,k);

end

輸入資訊為:

………… 1 1 0 1 1 0 0 1 1 1 …………………………

通過BCH編碼之后,得到BCH編碼資訊:

………… 1 1 0 0 0 1 0 0 1 0 …………………………

5.3 BCH譯碼的系統仿真

本系統譯碼我們將采用應用十分普遍的‘錢搜索’法進行譯碼,前面我們已經簡單的介紹了該演算法, 其MATLAB代碼實作程序如下所示:

lambda_v = zero;

accu_tb=gf(ones(1, t+1), m);

for i=1:n,

lambda_v=lambda*accu_tb';

accu_tb = accu_tb.*inverse_tb;

if(lambda_v==zero)

error(1,n-i+1)=1;

else

error(1,n-i+1)=0;

end

end

found = find(error(1,:)~=0);

for i=1:length(found)

location=found(i);

if location <= k;

rec_data(n-location+1)=rec_data(n-location+1)+one;

end

end

decoded_data((j-1)*k+1:(j-1)*k+k)=rec_data(n-k+1:n);

我們將編碼之后得到的信號輸入BCH譯碼部分,輸出結果:

………… 1 1 0 1 1 0 0 1 1 1 …………………………

5.2.4 不同引數的BCH編解碼性能分析

本章我們將重點對幾種不同引數的BCH碼進行了仿真,系統信噪比的分析我們主要采用:semilogy進行仿真,我們分別對(511,493)(4095,4035)進行仿真,然后不改變n,k兩個引數,改變其糾錯能力進行仿真,從而判斷BCH編解碼的性能,

圖5-1 n=511,k=493t=11條件下信噪比

圖5-2 n=4095,k=4035t=11條件下信噪比

圖5-3 BCH編碼和不編碼的性能對比(綠色為未通過編碼)

從仿真結果可以看出,對于糾錯能力相同的BCH碼,碼字長度短的相對碼字長度長的性能好,且平均仿真一個碼字所耗費的時間少,分析原因,是因為在相同的信道條件下,每個碼元出現錯誤的概率是相同的,對于碼字長度長的BCH碼,平均每個碼字中出現錯誤的碼元個數多,所以對于糾錯能力相同的BCH碼,碼字長度長的性能差,

以上我們詳細介紹了MATLAB的BCH編解碼和信噪比分析,下面我們將在Siumlink中進行BCH實際仿真,在本系統,我們將基于BPSK進行仿真分析,

不加BCH的BPSK系統如下所示:

圖5-4 BPSK仿真系統

其仿真結果如下所示:

加入BCH編解碼,其系統如下所示:

圖5-5 BCH仿真系統

其仿真結果如下所示:

由上圖可見,加上BCH編解碼后,新能得到大大改善,

·編碼和譯碼

clc;

clear;

close all;

m=9;%輸入引數6

k=493;%輸入引數4

snr=1;

n=2^m-1;

period=1000;

nwords = ceil(1000/k);

[genpoly,t] = bchgenpoly(n,k);

simplified = 1;

alpha = gf(2, m);

zero = gf(0, m);

one = gf(1, m);

message=randint(1,nwords*k);

message1=gf(message);

decoded_data=gf(zeros(1,nwords*k));

alpha_tb=gf(zeros(1, 2*t), m);

for i=1:2*t,

alpha_tb(i)=alpha^(2*t-i+1);

end;

%BCH編碼

for j=1:nwords

encoded_data((j-1)*n+1:(j-1)*n+n)=bchencoder(message((j-1)*k+1:(j-1)*k+k),genpoly,n,k);%由高位到低位

end

%添加噪聲

sigma=sqrt(1/(10^(snr/10))/2);

datalength=length(encoded_data);

snum=ceil(datalength/period);

for(i=1:snum-1)

data2((i-1)*period+1:(i-1)*period+period)=encoded_data((i-1)*period+1:(i-1)*period+period)+sigma*randn(1,period);

end

data2((snum-1)*period+1:datalength)=encoded_data((snum-1)*period+1:datalength)+sigma*randn(1,length(encoded_data((snum-1)*period+1:datalength)));

rec_data2=zeros(1,nwords*n);

for i=1:nwords*n

if abs(encoded_data(i)-data2(i))>0.5

rec_data2(i)=xor(encoded_data(i),1);

else

rec_data2(i)=encoded_data(i);

end

end

rec_data2=gf(rec_data2,m);

%BCH譯碼

for j=1:nwords

rec_data=rec_data2((j-1)*n+1:(j-1)*n+n);

syndrome=gf(zeros(1, 2*t), m);

for i=1:n,

syndrome=syndrome.*alpha_tb+rec_data(n-i+1);

end;

lambda = gf([1, zeros(1, t)], m);

lambda0= lambda;

b=gf([0, 1, zeros(1, t)], m);

b2 = gf([0, 0, 1, zeros(1, t)], m);

k1=0;

gamma = one;

delta = zero;

syndrome_array = gf(zeros(1, t+1), m);

if(simplified == 1)

for r=1:t,

r1 = 2*t-2*r+2;

r2 = min(r1+t, 2*t);

num = r2-r1+1;

syndrome_array(1: num) = syndrome(r1:r2);

delta = syndrome_array*lambda';

lambda0 = lambda;

lambda = gamma*lambda-delta*b2(2:t+2);

if((delta~= zero) && (k1>=0))

b2(3)=zero;

b2(4:3+t) = lambda0(1:t);

gamma = delta;

k1 = -k1;

else

b2(3:3+t) = b2(1:t+1);

gamma = gamma;

k1=k1+2;

end

joke=1;

end

else

for r=1:2*t,

r1 = 2*t-r+1;

r2 = min(r1+t, 2*t);

num = r2-r1+1;

syndrome_array(1:num) = syndrome(r1:r2);

delta = syndrome_array*lambda';

lambda0 = lambda;

lambda = gamma*lambda-delta*b(1:t+1);

if((delta ~= zero) && (k1>=0))

b(2:2+t)=lambda0;

gamma = delta;

k1=-k1-1;

else

b(2:2+t) = b(1:t+1);

gamma = gamma;

k1=k1+1;

end

joke=1;

end

end

inverse_tb = gf(zeros(1, t+1), m);

for i=1:t+1,

inverse_tb(i) = alpha^(-i+1);

end;

%錢搜索法

lambda_v = zero;

accu_tb=gf(ones(1, t+1), m);

for i=1:n,

lambda_v=lambda*accu_tb';

accu_tb = accu_tb.*inverse_tb;

if(lambda_v==zero)

error(1,n-i+1)=1;

else

error(1,n-i+1)=0;

end

end

found = find(error(1,:)~=0);

for i=1:length(found)

location=found(i);

if location <= k;

rec_data(n-location+1)=rec_data(n-location+1)+one;

end

end

decoded_data((j-1)*k+1:(j-1)*k+k)=rec_data(n-k+1:n);

end

·信噪比仿真

clc;

clear all;

close all;

%引數設定%(511,493)(4095.4035)

givenSNR=0.5:0.5:9.5; %]

% N=511;

% K=493;

N=4095;

K=4035;

T=11;

times=length(givenSNR);

%計算幾個值

r=K/N;

Eb_N0=10.^(givenSNR./10);

sigma=(1./(2*r.*Eb_N0).^0.5);

message=randint(times,K,[0,1]);

msg=gf(message);

BCHcode_gf=bchenc(msg,N,K);

%BCH編碼

BCHcode_double=-1*ones(times,N);

for code_i=1:times

for code_j=1:N

if BCHcode_gf(code_i,code_j)==1

BCHcode_double(code_i,code_j)=1;

end

end

end

%添加噪聲

for noise_i=1:length(sigma)

BCH_receive(:,:,noise_i)=BCHcode_double+sigma(noise_i)*randn(times,N);

end

for noise_i=1:length(sigma)

for hard_i=1:times

for hard_j=1:N

if BCH_receive(hard_i,hard_j,noise_i)>0

hard_coded(hard_i,hard_j,noise_i)=1;

end

end

end

end

%BCH解碼

BCHdecode=gf(zeros(times,K,length(sigma)));

for noise_i=1:length(sigma)

hard_BCH=hard_coded(:,:,noise_i);

[BCHdecode_i,error_num]=bchdec(gf(hard_BCH),N, K);

BCHdecode(:,:,noise_i)=BCHdecode_i;

end

BCHdecode_double=zeros(times,K);

for noise_i=1:length(sigma)

for gf_to_double_i=1:times

for gf_to_double_j=1:K

if BCHdecode(gf_to_double_i,gf_to_double_j,noise_i)==1

BCHdecode_double(gf_to_double_i,gf_to_double_j,noise_i)=1;

end

end

end

end

for noise_i=1:length(sigma)

error_BCHcoded_num(noise_i)=sum(sum((abs(BCHdecode_double(:,:,noise_i)-message))));

end

coded_error_rate=error_BCHcoded_num/times/K

semilogy(givenSNR,coded_error_rate,'-*');

ylabel('BER');

xlabel('Eb/N0');

grid on;

轉載請註明出處,本文鏈接:https://www.uj5u.com/qita/121287.html

標籤:其他

上一篇:【面經】北大醫信一面

下一篇:【技術普及】國標GB28181協議內SIP監控域互聯結構解釋

標籤雲
其他(157675) Python(38076) JavaScript(25376) Java(17977) C(15215) 區塊鏈(8255) C#(7972) AI(7469) 爪哇(7425) MySQL(7132) html(6777) 基礎類(6313) sql(6102) 熊猫(6058) PHP(5869) 数组(5741) R(5409) Linux(5327) 反应(5209) 腳本語言(PerlPython)(5129) 非技術區(4971) Android(4554) 数据框(4311) css(4259) 节点.js(4032) C語言(3288) json(3245) 列表(3129) 扑(3119) C++語言(3117) 安卓(2998) 打字稿(2995) VBA(2789) Java相關(2746) 疑難問題(2699) 细绳(2522) 單片機工控(2479) iOS(2429) ASP.NET(2402) MongoDB(2323) 麻木的(2285) 正则表达式(2254) 字典(2211) 循环(2198) 迅速(2185) 擅长(2169) 镖(2155) 功能(1967) .NET技术(1958) Web開發(1951) python-3.x(1918) HtmlCss(1915) 弹簧靴(1913) C++(1909) xml(1889) PostgreSQL(1872) .NETCore(1853) 谷歌表格(1846) Unity3D(1843) for循环(1842)

熱門瀏覽
  • 網閘典型架構簡述

    網閘架構一般分為兩種:三主機的三系統架構網閘和雙主機的2+1架構網閘。 三主機架構分別為內端機、外端機和仲裁機。三機無論從軟體和硬體上均各自獨立。首先從硬體上來看,三機都用各自獨立的主板、記憶體及存盤設備。從軟體上來看,三機有各自獨立的作業系統。這樣能達到完全的三機獨立。對于“2+1”系統,“2”分為 ......

    uj5u.com 2020-09-10 02:00:44 more
  • 如何從xshell上傳檔案到centos linux虛擬機里

    如何從xshell上傳檔案到centos linux虛擬機里及:虛擬機CentOs下執行 yum -y install lrzsz命令,出現錯誤:鏡像無法找到軟體包 前言 一、安裝lrzsz步驟 二、上傳檔案 三、遇到的問題及解決方案 總結 前言 提示:其實很簡單,往虛擬機上安裝一個上傳檔案的工具 ......

    uj5u.com 2020-09-10 02:00:47 more
  • 一、SQLMAP入門

    一、SQLMAP入門 1、判斷是否存在注入 sqlmap.py -u 網址/id=1 id=1不可缺少。當注入點后面的引數大于兩個時。需要加雙引號, sqlmap.py -u "網址/id=1&uid=1" 2、判斷文本中的請求是否存在注入 從文本中加載http請求,SQLMAP可以從一個文本檔案中 ......

    uj5u.com 2020-09-10 02:00:50 more
  • Metasploit 簡單使用教程

    metasploit 簡單使用教程 浩先生, 2020-08-28 16:18:25 分類專欄: kail 網路安全 linux 文章標簽: linux資訊安全 編輯 著作權 metasploit 使用教程 前言 一、Metasploit是什么? 二、準備作業 三、具體步驟 前言 Msfconsole ......

    uj5u.com 2020-09-10 02:00:53 more
  • 游戲逆向之驅動層與用戶層通訊

    驅動層代碼: #pragma once #include <ntifs.h> #define add_code CTL_CODE(FILE_DEVICE_UNKNOWN,0x800,METHOD_BUFFERED,FILE_ANY_ACCESS) /* 更多游戲逆向視頻www.yxfzedu.com ......

    uj5u.com 2020-09-10 02:00:56 more
  • 北斗電力時鐘(北斗授時服務器)讓網路資料更精準

    北斗電力時鐘(北斗授時服務器)讓網路資料更精準 北斗電力時鐘(北斗授時服務器)讓網路資料更精準 京準電子科技官微——ahjzsz 近幾年,資訊技術的得了快速發展,互聯網在逐漸普及,其在人們生活和生產中都得到了廣泛應用,并且取得了不錯的應用效果。計算機網路資訊在電力系統中的應用,一方面使電力系統的運行 ......

    uj5u.com 2020-09-10 02:01:03 more
  • 【CTF】CTFHub 技能樹 彩蛋 writeup

    ?碎碎念 CTFHub:https://www.ctfhub.com/ 筆者入門CTF時時剛開始刷的是bugku的舊平臺,后來才有了CTFHub。 感覺不論是網頁UI設計,還是題目質量,賽事跟蹤,工具軟體都做得很不錯。 而且因為獨到的金幣制度的確讓人有一種想去刷題賺金幣的感覺。 個人還是非常喜歡這個 ......

    uj5u.com 2020-09-10 02:04:05 more
  • 02windows基礎操作

    我學到了一下幾點 Windows系統目錄結構與滲透的作用 常見Windows的服務詳解 Windows埠詳解 常用的Windows注冊表詳解 hacker DOS命令詳解(net user / type /md /rd/ dir /cd /net use copy、批處理 等) 利用dos命令制作 ......

    uj5u.com 2020-09-10 02:04:18 more
  • 03.Linux基礎操作

    我學到了以下幾點 01Linux系統介紹02系統安裝,密碼啊破解03Linux常用命令04LAMP 01LINUX windows: win03 8 12 16 19 配置不繁瑣 Linux:redhat,centos(紅帽社區版),Ubuntu server,suse unix:金融機構,證券,銀 ......

    uj5u.com 2020-09-10 02:04:30 more
  • 05HTML

    01HTML介紹 02頭部標簽講解03基礎標簽講解04表單標簽講解 HTML前段語言 js1.了解代碼2.根據代碼 懂得挖掘漏洞 (POST注入/XSS漏洞上傳)3.黑帽seo 白帽seo 客戶網站被黑帽植入劫持代碼如何處理4.熟悉html表單 <html><head><title>TDK標題,描述 ......

    uj5u.com 2020-09-10 02:04:36 more
最新发布
  • 2023年最新微信小程式抓包教程

    01 開門見山 隔一個月發一篇文章,不過分。 首先回顧一下《微信系結手機號資料庫被脫庫事件》,我也是第一時間得知了這個訊息,然后跟蹤了整件事情的經過。下面是這起事件的相關截圖以及近日流出的一萬條資料樣本: 個人認為這件事也沒什么,還不如關注一下之前45億快遞資料查詢渠道疑似在近日復活的訊息。 訊息是 ......

    uj5u.com 2023-04-20 08:48:24 more
  • web3 產品介紹:metamask 錢包 使用最多的瀏覽器插件錢包

    Metamask錢包是一種基于區塊鏈技術的數字貨幣錢包,它允許用戶在安全、便捷的環境下管理自己的加密資產。Metamask錢包是以太坊生態系統中最流行的錢包之一,它具有易于使用、安全性高和功能強大等優點。 本文將詳細介紹Metamask錢包的功能和使用方法。 一、 Metamask錢包的功能 數字資 ......

    uj5u.com 2023-04-20 08:47:46 more
  • vulnhub_Earth

    前言 靶機地址->>>vulnhub_Earth 攻擊機ip:192.168.20.121 靶機ip:192.168.20.122 參考文章 https://www.cnblogs.com/Jing-X/archive/2022/04/03/16097695.html https://www.cnb ......

    uj5u.com 2023-04-20 07:46:20 more
  • 從4k到42k,軟體測驗工程師的漲薪史,給我看哭了

    清明節一過,盲猜大家已經無心上班,在數著日子準備過五一,但一想到銀行卡里的余額……瞬間心情就不美麗了。最近,2023年高校畢業生就業調查顯示,本科畢業月平均起薪為5825元。調查一出,便有很多同學表示自己又被平均了。看著這一資料,不免讓人想到前不久中國青年報的一項調查:近六成大學生認為畢業10年內會 ......

    uj5u.com 2023-04-20 07:44:00 more
  • 最新版本 Stable Diffusion 開源 AI 繪畫工具之中文自動提詞篇

    🎈 標簽生成器 由于輸入正向提示詞 prompt 和反向提示詞 negative prompt 都是使用英文,所以對學習母語的我們非常不友好 使用網址:https://tinygeeker.github.io/p/ai-prompt-generator 這個網址是為了讓大家在使用 AI 繪畫的時候 ......

    uj5u.com 2023-04-20 07:43:36 more
  • 漫談前端自動化測驗演進之路及測驗工具分析

    隨著前端技術的不斷發展和應用程式的日益復雜,前端自動化測驗也在不斷演進。隨著 Web 應用程式變得越來越復雜,自動化測驗的需求也越來越高。如今,自動化測驗已經成為 Web 應用程式開發程序中不可或缺的一部分,它們可以幫助開發人員更快地發現和修復錯誤,提高應用程式的性能和可靠性。 ......

    uj5u.com 2023-04-20 07:43:16 more
  • CANN開發實踐:4個DVPP記憶體問題的典型案例解讀

    摘要:由于DVPP媒體資料處理功能對存放輸入、輸出資料的記憶體有更高的要求(例如,記憶體首地址128位元組對齊),因此需呼叫專用的記憶體申請介面,那么本期就分享幾個關于DVPP記憶體問題的典型案例,并給出原因分析及解決方法。 本文分享自華為云社區《FAQ_DVPP記憶體問題案例》,作者:昇騰CANN。 DVPP ......

    uj5u.com 2023-04-20 07:43:03 more
  • msf學習

    msf學習 以kali自帶的msf為例 一、msf核心模塊與功能 msf模塊都放在/usr/share/metasploit-framework/modules目錄下 1、auxiliary 輔助模塊,輔助滲透(埠掃描、登錄密碼爆破、漏洞驗證等) 2、encoders 編碼器模塊,主要包含各種編碼 ......

    uj5u.com 2023-04-20 07:42:59 more
  • Halcon軟體安裝與界面簡介

    1. 下載Halcon17版本到到本地 2. 雙擊安裝包后 3. 步驟如下 1.2 Halcon軟體安裝 界面分為四大塊 1. Halcon的五個助手 1) 影像采集助手:與相機連接,設定相機引數,采集影像 2) 標定助手:九點標定或是其它的標定,生成標定檔案及內參外參,可以將像素單位轉換為長度單位 ......

    uj5u.com 2023-04-20 07:42:17 more
  • 在MacOS下使用Unity3D開發游戲

    第一次發博客,先發一下我的游戲開發環境吧。 去年2月份買了一臺MacBookPro2021 M1pro(以下簡稱mbp),這一年來一直在用mbp開發游戲。我大致分享一下我的開發工具以及使用體驗。 1、Unity 官網鏈接: https://unity.cn/releases 我一般使用的Apple ......

    uj5u.com 2023-04-20 07:40:19 more