C語言-EM4100卡面上三個資料間轉換
第一次上RFID實驗課出了這麼一道題:
使用C語言程式片段來描述,EM4100卡面上三個資料間轉換。額外引入一個運算元,通過C語言運算操作符實現。
至於EM4100卡面上相關資料的資訊,如下
一張EM4100卡上噴印兩段不同的程式碼:0007155956 109,12532。
其中前段:
前段: 0007155956是正常的維根32格式卡號,它是將十六進位制的卡內序列號“19 00 6D 30 F4h”中的後8位“00 6D 30 F4”,經數制轉換得到10位十進位制資料(即對應卡片上的十進位制數7155956”);
後段:
後段: 109,12532是維根24格式卡號,它是將十六進位制的卡內序列號後6位:6D 30 F4,再經讀卡器按照“6D+30 F4”格式,分兩段轉換成十進位制資料,兩段資料間用“,”隔開。逗號前的“109”由十六進位制“6D 30 F4”中“6D”轉換得到;逗號後的“12532”由十六進位制“6D 30 F4”中“30 F4”轉換得到。
其實這道題非常簡單。運用左移<<,右移>>,以及位或|運算子即可。程式碼如下:
#include <stdio.h>
int main( )
{
int t;
scanf("%d",&t);
int a,b,c;
switch(t){
case 0:
scanf("%d",&a);
b=a>>16;
c=a<<16;
c>>=16;
break;
case 1:
scanf("%d,%d",&b,&c);
b<<16;
a=b|c;
}
printf("WeiGE 32:%d, WeiGE 24:%d,%d",a,b,c);
scanf("%d",&t);
return 0;
}
相關文章
- C語言“字串-數字”之間的轉換C語言字串
- C語言---整型字串轉換C語言字串
- Go語言轉換JSON資料GoJSON
- c語言字串,數字轉換C語言字串
- 換個角度帶你學C語言的基本資料型別C語言資料型別
- C語言學習資料(轉載)C語言
- 用C語言實現常見的三種中文內碼轉換(轉)C語言
- C語言的隱式型別轉換C語言型別
- C語言型別轉換大學霸IT達人C語言型別
- C語言(C++語言)中##(兩個井號)和#(一個井號)用法[轉]C語言C++
- C語言資料型別C語言資料型別
- 使用C#語言操作ADO資料庫 (轉)C#資料庫
- C語言_資料結構圖(留個筆記)C語言資料結構筆記
- SQL資料型別和C#資料型別間的轉換SQL資料型別C#
- delphixe3呼叫C語言開發的dll介面中引數之間資料型別轉換及處理C語言資料型別
- SAP OTR語言轉換R語言
- c語言字串與整形,浮點數...相互轉換C語言字串
- C語言第三篇:C語言資料型別及各資料型別所佔記憶體位元組數C語言資料型別記憶體
- r語言資料處理(三)R語言
- C語言練習——資料加密C語言加密
- C語言期末複習資料C語言
- C語言(基本資料型別)C語言資料型別
- C語言兩結構體之間的成員互換C語言結構體
- C語言時間函式C語言函式
- c語言中int與float資料運算時,資料轉換問題C語言
- C 時間轉換時間戳時間戳
- C 語言整數與字串的相互轉換介紹字串
- 多國語言程式設計之資源轉換 (轉)程式設計
- C語言 列舉資料型別C語言資料型別
- c語言的基本資料型別C語言資料型別
- C++語言概述 (轉)C++
- C 時間戳轉換成時間時間戳
- Go語言學習(6) - 資料型別轉換和常量以及iotaGo資料型別
- 【揭祕】C語言型別轉換時發生了什麼?C語言型別
- C語言atoi()函式:將字串轉換成int(整數)C語言函式字串
- C/C++ 時間轉換與表示C++
- c語言中的資料型別的自動轉換原則C語言資料型別
- C語言的本質(26)——C標準庫之數值字串轉換C語言字串