突然看到自己寫的一段**,於是想到了當初糾結的經歷。正巧和一些東西聯絡起來。
對於乙個無符號型16位的數來說,它能表達的最小數字為0即2^0 - 1,最大數字為2^16 - 1.同理32位,64位等。
在運算子中存在+=
,-=
這樣的操作。
以下便是我在設計中的乙個**,大體框架:
uint16a += uint16b - uint16c;
後來,鬼使神差的考慮考慮到了資料的越界問題。
後來,莫名奇妙的改成了:
uint16a += uint16b;
uint16a -= uint16c;
大概那個時候,我所考慮的是為了引起不必要的歧義,才將上面的那個語句拆封為兩個簡單語句的。畢竟a += b - c
會有一定的歧義。
後來,針對這個問題的值上,覺得這種無法避免。以下是我借鑑的模型。
計算機的數字系統,可以看做乙個迴圈。即最大 + 1 = 最小
,最小 - 1 = 最大
,模擬與和我們密切相關的鐘錶。
時鐘的指標所指向的位置表示數字,一天的最晚點與一天的最早點相連線。那麼,無論我們怎麼去做運算:
1.相當與去做指標的順時針轉動與逆時針轉動。
2.我們可以算好要轉動的角度與方向,一次性到位。
其結果和一步一步執行的結果一樣,同理可用於其他迴圈類結構。
隔了這麼長時間,突然想到了乙個很蠢的問題,可能那個時候沒有意識到這些,做了一些蠢事。
以下展開,大致的意思和這個意思一樣。
有一次,用系統時鐘來記錄時間,以下是**:
uint32 timedelay()
實現起來比這複雜,大致意思為這樣。現在想想,還是太年輕了。直接乙個return timenow - timelast
就夠了,壓根就不用判斷。
細想起來,確實是有點意思。
由PageRank想到的
首先來看看什麼是pagerank pagerank 技術 通過對由超過 50,000 萬個變數和 20 億個詞彙組成的方程進行計算,pagerank 能夠對網頁的重要性做出客觀的評價。pagerank 並不計算直接鏈結的數量,而是將從網頁 a 指向網頁 b 的鏈結解釋為由網頁 a 對網頁 b 所投的...
由Cannot find file 想到的
記錄一下 今天除錯程式,單步真機除錯,我日,程式一步一步走,盡然和程式根本就對不上號。特別奇怪。思考一下,應該是工程太多太雜,自己有不小心,讓它們混在一起打架了。於是繼續,把其它所有工程都關了,只開啟乙個,清理了所有工程。與此工程有關的直接搜尋清理,一直以來覺得沒有必要,但這次是為了保險起見。編譯工...
由VBA想到的
這段時間由於工作原因研究了一下 vba,感覺完全是如墜五里霧中,主要原因是對 atl乃至對 com技術的應用不了解。簡單說一下 vba,用過 office 系列軟體的朋友都知道它,用 vb語法來控制文件生成過程,很不錯。不只是 office,很多其它優秀軟體都有 vba模組,比如 autocad 這...