檔案
說明makefile
- 編譯 btest, fshow, 與 ishow
readme
- 此說明文件
bits.c
- 你將修改與提交的檔案
bits.h
- 標頭檔案
btest.c
- btest 主程式
btest.h
- 用於搭建 btest
decl.c
- 用於搭建 btest
tests.c
- 用於搭建 btest
tests-header.c
- 用於搭建 btest
dlc*
- 規則檢查程式,(data lab 編譯器)
driver.p*
- driver program that uses btest and dlc to autograde bits.c
driverhdrs. pm
- 選項 " beat the prof " 的標頭檔案
fshow.c
- 用於檢測浮點數格式
ishow.c
- 用於檢測整數格式
使用 dlc 編譯器(./dlc)來檢查你的 bits.c 是否遵從了**規則:
unix> ./dlc bits.c
unix> ./dlc -e bits.c
可以使其列印出每個函式所使用的操作符數目。
當你確保**符合規定之後,你可以通過 ./btest 程式來檢測其正確性。
目錄中的 makefile 會將你的 bits.c 連同一些附加**一起編譯以生成乙個名為 btest 的程式(或者叫測試裝置)。
鍵入以下命令來編譯及執行 btest 程式:
unix> make btest
unix> ./btest [optional cmd line args]
每次你修改了 bits.c 檔案,你都需要重新編譯 btest。當在平台之間遷移檔案時,你可能想要捨棄舊的 btest,重新編譯。使用以下命令:
unix> make clean
unix> make btest
btest 會為每個函式執行數以百萬記的測試樣例來檢測你**的正確性。樣例覆蓋的寬度極廣,包含了一些廣為人知的邊緣案例,比如 integer puzzle 中的 tmin 和 0,floating point puzzle 中的 0,inf,以及規格化數與非規格化數的界線。當 btest 發現你某個函式中的錯誤時,它將列印出無法通過的樣例,對應的錯誤結果和正確結果,然後結束該函式的測試。
以下是 btest 的命令列選項:
unix> ./btest -h
usage: ./btest [-hg] [-r ] [-f [-1|-2|-3 ]*] [-t ]
-1 specify first function argument
-2 specify second function argument
-3 specify third function argument
-f test only the named function
-g format output for autograding with no error messages
-h print this message
-r give uniform weight of n for all problems
-t set timeout limit to lim
選項
說明-1
指定第乙個引數值
-2 指定第二個引數值
-3 指定第三個引數值
-f 只檢測此名稱的函式
-g以「不帶錯誤資訊」格式化自動評分輸出
-h列印此幫助資訊
-r 對所有問題給出統一權重 n
-t 設定超時上限
例:測試所有函式並輸出錯誤資訊:
unix> ./btest
以簡介模式測試所有函式,不輸出錯誤資訊:
unix> ./btest -g
測試函式 foo 的正確性:
unix> ./btest -f foo
以指定引數測試函式 foo 的正確性:
unix> ./btest -f foo -1 27 -2 0xf
btest 並不檢查你的**是否符合規定,請使用 dlc 來做對應檢測。
我們為你打包了 ishow 和 fshow 程式來分別幫助你得到整型與浮點型的表示形式。它們各自接受乙個十進位制或十六進製制數作為引數。使用以下命令搭建這兩個程式:
unix> make
例:unix> ./ishow 0x27
hex = 0x00000027, signed = 39, unsigned = 39
unix> ./ishow 27
hex = 0x0000001b, signed = 27, unsigned = 27
unix> ./fshow 0x15213243
floating point value 3.255334057e-26
bit representation 0x15213243, sign = 0, exponent = 0x2a, fraction = 0x213243
normalized. +1.2593463659 x 2^(-85)
linux> ./fshow 15213243
floating point value 2.131829405e-38
bit representation 0x00e822bb, sign = 0, exponent = 0x01, fraction = 0x6822bb
normalized. +1.8135598898 x 2^(-126)
Python 官方文件中文翻譯專案
專案詳情參見 pep545 www.python.org dev peps pe 翻譯版文件會定時更新到官網以便對照參閱 docs.python.org zh cn 3 例如我翻譯的標準庫海龜繪圖模組文件 docs.python.org zh cn 3.7 l 你可以在 資訊面板 檢視專案基本資訊,...
Google BigTable 中文翻譯
題記 google 的成功除了乙個個出色的創意外,還因為有 jeff dean 這樣的軟體架構天才。歡迎訂閱作者微博 編者 官方的 google reader blog 中有對bigtable 的解釋。這是google 內部開發的乙個用來處理大資料量的系統。這種系統適合處理半結構化的資料比如 rss...
Cython官方文件中文翻譯 安裝Cython
最簡單的cython安裝方式是採用pip pip install cythonpython setup.py install對於一次性構建 builds 例如ci testing,在pypi上任意輪包都未覆蓋的平台上,安裝未編譯 慢 的cython版本要比全 構建 full source build...