原创 算法系列之二十:計算中國農曆(一)

        世界各國的日曆都是以天爲最小單位,但是關於年和月的算法卻各不相同,大致可以分爲三類: 陽曆--以天文年作爲日曆的主要週期,例如:中國公曆(格里曆)陰曆--以天文月作爲日曆的主要週期,例如:伊斯蘭曆陰陽曆--以天文年和天文月

原创 算法系列之十九:用天文方法計算日月合朔(新月)

        中國農曆的朔望月是農曆曆法的基礎,而朔望月又是嚴格以日月合朔發生的那一天作爲月首,因此日月合朔時間的計算是制定農曆曆法的關鍵。本文將介紹ELP-2000/82月球運行理論,以及如何用ELP-2000/82月球運行理論計算日

原创 算法系列之十八:用天文方法計算二十四節氣(下)

【接上篇】         經過上述計算轉換得到座標值是理論值,或者說是天體的幾何位置,但是FK5系統是一個目視系統,也就是說體現的是人眼睛觀察效果(光學位置),這就需要根據地球的物理環境、大氣環境等信息做進一步的修正,使其和人類從地球上

原创 遞歸和Windows系統的棧保護

Windows系統上創建線程可以使用CreateThread() API,這個API的原型是: HANDLE WINAPI CreateThread(  __in          LPSECURITY_ATTRIBUTES lpThre

原创 算法系列之二十二:離散傅立葉變換之聽聲音破解電話號碼

        2012年9月的時候,一個南京的大學生從電視臺播放的一段記者採訪360總裁周鴻禕的視頻中破解了周鴻禕的手機號碼,一時間被網絡熱炒。後來,又聽說某人買車的時候使用電話銀行付款,結果被人錄下聲音,破解了銀行卡號和密碼,導致存款

原创 算法系列之二十:計算中國農曆(二)

(接上篇)        所謂的“天文算法”,就是利用經典力學定律推導行星運轉軌道,對任意時刻的行星位置進行精確計算,從而獲得某種天文現象發生時的時間,比如日月合朔這一天文現象就是太陽和月亮的地心黃經(視黃經)差爲0的那一瞬間。能夠計算任

原创 算法系列之十八:用天文方法計算二十四節氣(上)

        二十四節氣在中國古代曆法中扮演着非常重要的角色,本文將介紹二十四節氣的基本知識,以及如何使用VSOP82/87行星運行理論計算二十四節氣發生的準確時間。        中國古代曆法都是以月亮運行規律爲主,嚴格按照朔望月長度

原创 基於文件過濾驅動的透明加密那點事兒

        文件透明加密這點事兒,從2001年開始出現基於API HOOK的方式開始到現在,已經十幾年了,有細心人按技術實現的方式將其細分爲4代,分別是基於API HOOK的第一代技術、基於文件過濾驅動

原创 算法系列之二十四:離散傅立葉變換之音頻播放與均衡器

導語 在算法系列的第二十二篇,我們介紹了離散傅立葉變換算法的實現,將時域的音頻信號轉換到頻域進行分析,獲取撥號音頻的頻率特徵。這一篇我們將介紹一種頻域均衡器的實現方法,所謂的頻域均衡器,就是在頻域信號的基礎上對音頻數據進行調整,然後

原创 算法系列之十七:日曆生成算法-中國公曆(格里曆)(下)

【接上篇】         上述計算星期的方法雖然步驟簡單,但是每次都要計算兩個日期的時間差,不是非常方便。如果能夠有一個公式可以直接根據日期計算出對應的星期豈不是更好?幸運的是,這樣的公式是存在的。此類公式的推導原理仍然是通過兩個日期的

原创 算法系列之二十三:離散傅立葉變換之音頻播放與頻譜顯示

        頻譜和均衡器,幾乎是媒體播放程序的必備物件,沒有這兩個功能的媒體播放程序會被認爲不夠專業,現在主流的播放器都具備這兩個功能,foobar 2000的十八段均衡器就曾經讓很多人着迷。我用Winamp播放音樂(AOL已經在20

原创 研究了一下CSDN 私信的排序,我也是醉了

一直感覺CSDN的通知和私信總是看起來怪怪的,主頁提示有私信,打開卻看不到,有時候向後翻幾頁又能看到。 今天又遇到這種情況了,於是研究了一下,剛開始還是沒找到規律,直到看到“3天前”的消息排在最後一個“3年前”的消息之後,突然就明白了

原创 TabSiPlus 發佈到 Github了

TabSiPlus 發佈到 Github了 代碼在這裏: https://github.com/inte2000/TabSiPlus.git 有任何感覺不爽的地方都可以自己動手了,想要Frok這個項目的,清關注隨後發佈的todo列表,

原创 算法系列之二十三:離散傅立葉變換之音頻播放與頻譜顯示

算法系列之二十三:離散傅立葉變換之音頻播放與頻譜顯示 算法系列之二十三離散傅立葉變換之音頻播放與頻譜顯示 導語 什麼是頻譜 1 頻譜的原理 2 頻譜的選擇 3 頻譜的計算 顯示動態頻譜 1 實現方法 2 雜項說明 結果展示

原创 關於《算法的樂趣》傅立葉變換一章的補充

一些熱心讀者反饋在介紹快速傅立葉變換(FFT)部分的描述和代碼不一致,比如某位讀者反饋前面正文介紹的是DIT-FFT,但是給出的代碼實現確是DIF-FFT,讓人困惑,本文準備補充一下相關的內容。 DIT-FFT和DIF-FFT,一個是