PCDVD數位科技討論區
(https://www.pcdvd.com.tw/index.php)
- 疑難雜症區
(https://www.pcdvd.com.tw/forumdisplay.php?f=34)
- - 有沒有 128-bit 的計算機程式
(https://www.pcdvd.com.tw/showthread.php?t=1158223)
|
---|
有沒有 128-bit 的計算機程式
小算盤那類的 可以計算顯示範圍是 128-bit
例如 可以計算顯示出 0xFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFF 範圍的應用程式 Windows 或者 Linux 的都可以 :cool: |
|
引用:
我需要有 HEX 的 最好還有二進位的 :think: |
你可以自己寫一個啊。
:) 腦袋太久沒用會壞掉的. :laugh: |
Win10小算盤有"工程"及"程式設計人員"模式(後者有Hex、WORD、DWORD、QWORD、BYTE,以及二進位值預覽),但我是不會寫程式,所以不知道這是否合乎樓主的要求!? :rolleyes:
|
引用:
不合...因為樓主要求的是128bit這種天文數字, 一般程式用上64bit變數已經是極限,他需求的 需要特別寫的大數運算才行,而且還要是BIN 表示方式的計算機... ------------------------- 只是有這種需求的通常是學校的程式作業之類.... 因為實際工作或數學運算少有需要這麼大數字的, 建議自己找網路上大數運算的相關source然後自己 修改轉換BIN的部份,可以參考的很多應該不會太難. |
64bit整數運算的暫存器寬度也才64bit,
除非用上sse2(還是無法直接使用)、avx指令,暫存器寬度才有到128bit以上, 不然就得用軟體模擬把它拆分成兩個64bit才能做運算, 實際運用上根本少之又少, 就算是一般的科學運算也很少用上這麼長的整數運算, 都是直接用有些許誤差值的浮點運算,限制還不會有這麼大... 既然128bit的整數運算用途有限, 自然而然不會有計算機的程式去寫出128bit的整數運算功能, 這也就是為什麼現階段的處理器都卡在64bit, 畢竟64bit的整數對於人類來說是天文數字..... |
引用:
是不是像這樣 代碼:
int main(void) { __uint128_t where = 0x3333333333333333 * 0x5555555555555555; // 列印後半段 [63:0] uint64_t DSTR = where & 0xFFFFFFFFFFFFFFFF; printf("DESTR = %llx\n", DSTR); // 列印前半段 [127:64] uint64_t DSTL = where >> 64; printf("DESTL = %llx\n", DSTL); return 0; } :laugh: :laugh: |
|
所有的時間均為GMT +8。 現在的時間是09:19 PM. |
vBulletin Version 3.0.1
powered_by_vbulletin 2024。