當前位置:首頁 » 編程語言 » 偶校驗c語言

偶校驗c語言

發布時間: 2025-02-13 23:22:52

① 求能實現奇偶校驗的c語言程序

用鏈表存儲輸入的2進制數,每個節點存儲一位數,然後計算1的個數,再看最後一位是1還是0,根據1的個數為奇數還是偶數以及最後一位為0還是1分4種情況分別討論。

② PIC單片機16F883 串列非同步通信 c語言編程 請詳細寫出各個寄存器,串口的作用,謝謝了。

#include <pic.h>
#define FOSC 18432000L
#define BAUD 115200
#define NONE_PARITY 0 //無校驗位
#define ODD_PARITY 1 //奇校驗
#define EVEN_PARITY 2 //偶校驗
#define MARK_PARITY 3 //標記校驗
#define SPACE_PARITY 4 //空校驗
#define PARITYBIT EVEN_PARITY
#define S2RI 0x01
#define S2TI 0x02
#define S2RB8 0x04
#define S2TB8 0x08
sfr AUXR = 0x8e;
sfr S2CON = 0x9a;
sfr S2BUF = 0x9b;
sfr BRT = 0x9c;
sfr IE2 = 0xaf;
bit busy;
void SendData(char dat);
void SendString(char *s);

void main()
{
#if (PARITYBIT == NONE_PARITY)
S2CON = 0x5a; //8位可變波特率 (無校驗位)
#elif (PARITYBIT == ODD_PARITY) || (PARITYBIT == EVEN_PARITY) || (PARITYBIT == MARK_PARITY)
S2CON = 0xda; //9位可變波特率,校驗位初始為1
#elif (PARITYBIT == SPACE_PARITY)
S2CON = 0xd5; //9位可變波特率,校驗位初始為0
#endif

BRT = -(FOSC/32/BAUD); //設置獨立波特率發生器的重載初值
AUXR = 0x14; //獨立波特率發生器工作在1T模式
IE2 = 0x01; //使能串口2中斷
EA = 1; //開總中斷

SendString("STC12C5A60S2\r\nUart2 Test !\r\n");
while(1);
}

void Uart2() interrupt 8 using 1
{
if (S2CON & S2RI)
{
S2CON &= ~S2RI; //清除接收完成標志
P0 = S2BUF; //P0顯示串口數據
P2 = (S2CON & S2RB8); //P2.2顯示校驗位
}
if (S2CON & S2TI)
{
S2CON &= ~S2TI; //清除發送完成標志
busy = 0;
}
}

void SendData(char dat)
{
while (busy); //等待上個數據發送完成
ACC = dat; //取得偶校驗位P
if (P) //根據P來設置串口數據的校驗位
{
#if (PARITYBIT == ODD_PARITY)
S2CON &= ~S2TB8; //置校驗位為0
#elif (PARITYBIT == EVEN_PARITY)
S2CON |= S2TB8; //置校驗位為1
#endif
}
else
{
#if (PARITYBIT == ODD_PARITY)
S2CON |= S2TB8; //置校驗位為1
#elif (PARITYBIT == EVEN_PARITY)
S2CON &= ~S2TB8; //置校驗位為0
#endif
}
busy = 1;
S2BUF = ACC; //發送數據
}

void SendString(char *s)
{
while (*s) //判斷字元串結束標志
{
SendData(*s++); //發送字元
}
}

③ C語言字元轉換ASCII碼

#include<stdio.h>

voidmain()

{

unsignedchara;

printf("enterchar:");

scanf("%C",&a);

printf("ascii=%d",a);//強制轉化為ascii碼

}

(3)偶校驗c語言擴展閱讀:

在標准ASCII中,其最高位(b7)用作奇偶校驗位。所謂奇偶校驗,是指在代碼傳送過程中用來檢驗是否出現錯誤的一種方法,一般分奇校驗和偶校驗兩種。奇校驗規定:正確的代碼一個位元組中1的個數必須是奇數,若非奇數,則在最高位b7添1;偶校驗規定:正確的代碼一個位元組中1的個數必須是偶數,若非偶數,則在最高位b7添1。

④ 奼傝茶ВECC錛 128浣嶆暟鎹浣嶏紝9浣嶆牎楠屼綅鐨勭畻娉

ECC錛圗rror Correction Code錛夋槸涓縐嶇敤鏉ユ嫻嬪拰綰犳e唴瀛樹腑鐨勬暟鎹閿欒鐨勬妧鏈錛屽畠鍙浠ユ彁楂樼郴緇熺殑鍙闈犳у拰紼沖畾鎬с侲CC浣跨敤涓縐嶆洿楂樼駭鐨勫囧伓鏍¢獙鏂規硶錛屽嵆瀵規瘡64浣嶆暟鎹鐢熸垚7浣嶆牎楠屼綅錛岀劧鍚庢牴鎹榪欎簺鏍¢獙浣嶆潵鍒ゆ柇鏁版嵁鏄鍚﹀彂鐢熶簡閿欒錛屼互鍙婂備綍淇澶嶉敊璇銆

鐢–璇璦緙栧啓涓涓128浣嶆暟鎹浣嶏紝9浣嶆牎楠屼綅鐨凟CC綆楁硶錛岄渶瑕佷互涓嬪嚑涓姝ラわ細

  • 瀹氫箟涓涓緇撴瀯浣擄紝琛ㄧず涓涓128浣嶇殑鏁版嵁瀛楋紝浠ュ強涓涓9浣嶇殑鏍¢獙瀛椼傛垜浠鍙浠ヤ嬌鐢ㄤ竴涓闀垮害涓4鐨勬棤絎﹀彿鏁村瀷鏁扮粍鏉ュ瓨鍌ㄦ暟鎹瀛楋紝姣忎釜鍏冪礌鍗32浣嶏紝鍏辮128浣嶃傛垜浠鍙浠ヤ嬌鐢ㄤ竴涓鏃犵﹀彿瀛楃︽潵瀛樺偍鏍¢獙瀛楋紝鍗8浣嶏紝鍐嶅姞涓婁竴涓甯冨皵鍊兼潵琛ㄧず絎9浣嶏紝鍏辮9浣嶃

  • 瀹氫箟涓涓鍑芥暟錛屾牴鎹緇欏畾鐨勬暟鎹瀛楃敓鎴愬瑰簲鐨勬牎楠屽瓧銆傛垜浠鍙浠ヤ嬌鐢ㄥ紓鎴栬繍綆楁潵璁$畻姣忎竴浣嶇殑濂囧伓鏍¢獙鍊礆紝鐒跺悗灝嗚繖浜涘肩粍鍚堟垚涓涓鏍¢獙瀛椼

  • 瀹氫箟涓涓鍑芥暟錛屾牴鎹緇欏畾鐨勬暟鎹瀛楀拰鏍¢獙瀛楁嫻嬫槸鍚︽湁閿欒鍙戠敓銆傛垜浠鍙浠ヤ嬌鐢ㄥ紓鎴栬繍綆楁潵姣旇緝鏁版嵁瀛楀拰鏍¢獙瀛椾腑鐨勬瘡涓浣嶏紝濡傛灉鏈変笉鍚岋紝鍒欒存槑鏈夐敊璇鍙戠敓銆傛垜浠鍙浠ヤ嬌鐢ㄤ竴涓鏁村瀷鍙橀噺鏉ヨ板綍閿欒鍙戠敓鐨勪綅緗錛屽傛灉娌℃湁閿欒錛屽垯榪斿洖-1銆

  • 瀹氫箟涓涓鍑芥暟錛屾牴鎹緇欏畾鐨勬暟鎹瀛楀拰閿欒浣嶇疆淇澶嶉敊璇銆傛垜浠鍙浠ヤ嬌鐢ㄥ紓鎴栬繍綆楁潵緲昏漿鏁版嵁瀛椾腑鍑洪敊鐨勯偅涓浣嶏紝浠庤屾仮澶嶆g『鐨勫箋

熱點內容
麒麟系統如何安裝安卓程序 發布:2025-02-14 02:07:21 瀏覽:399
ipad訪問電腦硬碟嗎 發布:2025-02-14 02:02:53 瀏覽:901
蘋果筆記本電腦不能連接伺服器 發布:2025-02-14 01:43:02 瀏覽:394
查看linux的shell 發布:2025-02-14 01:38:42 瀏覽:989
用於打開ftp連接的應用程序 發布:2025-02-14 01:23:39 瀏覽:707
網站會員注冊源碼 發布:2025-02-14 01:09:45 瀏覽:658
小火山視頻密碼是什麼 發布:2025-02-14 01:09:40 瀏覽:506
我的世界手機創的伺服器電腦能進嗎 發布:2025-02-14 01:08:16 瀏覽:164
eclipseandroid運行 發布:2025-02-14 00:54:57 瀏覽:898
雲伺服器安全策略 發布:2025-02-14 00:54:07 瀏覽:290