procedure tform1.button1click(sender: tobject);
const
chexchars: array[0..15] of char = '0123456789abcdef';
vars: string;
i, j: integer;
a: array of byte;
p: pchar;
vtickcount: longword; // 計時
begin
s := ''; //存放結果
setlength(a, 10240000); // 測試資料開大一些
setlength(s, length(a) div 4);
for i := low(a) to high(a) do //生成測試資料
a[i] := random(2);
p := pchar(s);
vtickcount := gettickcount;
for i := 0 to length(s) - 1 do //少迴圈n次
begin
j := i shl 2;
p^ := chexchars[
a[j + 0] shl 3 or
a[j + 1] shl 2 or
a[j + 2] shl 1 or
a[j + 3] shl 0
];inc(p);
end;
form1.caption := inttostr(gettickcount - vtickcount); // 輸出處理時間
richedit1.text :=copy(s, 1, 10240); // 輸出部分結果
end;
關於漢明碼組成的乙個疑點的解決
在學習 計算機組成原理 儲存器校驗的漢明碼的過程中,產生了乙個疑惑,並利用不等式的證明解決了這個疑惑,下面展示一下解決過程,博君一笑。首先,明確一下漢明碼的組成 設欲檢測的二進位制 為n位,為使其具有糾錯能力,需增添k位檢測位,組成n k位的 為了能準確對錯誤定位以及指出 沒錯,新增添的檢測位數k應...
乙個關於檔案中位運算的的處理函式。
函式readdat 的功能是實現從檔案in88.dat中讀取一篇英文文章存入到字串陣列xx中。請編制函式charconva 其功能是 以行為單位把字串的最後乙個字元的ascii值右移4位後加最後第二個字元的ascii值,得到最後乙個新的字元,最後第二個字元的ascii值右移4位後加最後第三個字元的a...
乙個關於四位數猜想的驗證
摘要 有這樣乙個猜想 給定乙個四位數,abcd找出abcd組合成的最大數和最小數,然後相減,然後得到乙個新的四位數,重複該過程,不超過8次即可得到乙個固定的數6174 現在用c語言進行驗證 1 首先需要構建的函式是找到乙個四位數最大或者最小的組合 對於任意四位數,利用取餘數求出每個位,然後利用桶式排...