ネットワークプログラムを組む際に,Big Endian (Network Byte Order) Little Endian (x86) のエンディアン変換プログラムを書いてみた.(ほとんど参考サイトの写経ともいう.) /** @file endian_utility.hpp * @brief Header file for utility fanctions …
バイナリデータをごりごり直接操作する場合,1byte(8bit)型としてchar型を使用することがある.このとき,符号(signed / unsigned) を意識しないと思わぬ罠にはまるという話の経験談. 結論 1byte型は"unsigned" char型を意識して使うほうがよい. ポイント …
16進数ダンプの関数を書いてみた.(Debugger使うのはおいといて・・・.)せっかくなので,Boost.Formatを使ってみる. /** @file hex_dump.hpp * @brief Header file for fanction to display variable in hex. */ #ifndef HEX_DUMP_HPP__INCLUDED #define…
Windows(NT系)ではユーザーモードからI/O portの制御ができないようだ.(カーネルモードからドライバを使えということらしい.)ユーザーモードからI/O制御するためのDLL類を色々な人が提供している.定番がよくわからないが,とりあえずメモ: WinIo, http…
要旨 目的: Boost.Asio には Timerクラスである deadline_timerがある.この時間精度について調べてみる. 調査環境: Boost 1.44.0, Windows XP (x64) 結論: date_timeライブラリに依存している.調査環境におけるdate_timeライブラリの時間取得関数はGet…
Windowsでプロセスやスレッドの優先度を指定する方法のメモ.※OSのバージョン等によって,設定値や動作が違う場合がある模様なので注意. 優先度の基本的な考え方 0(もっとも低い)〜31(もっとも高い)であらわされる優先度によって,スレッドの実行をスケジ…
http://msdn.microsoft.com/ja-jp/library/cc429346.aspx におけるSetThreadAffinityMask 関数の説明によれば, DWORD SetThreadAffinityMask ( HANDLE hThread, // 操作対象スレッドのハンドル DWORD dwThreadAffinityMask // スレッドアフィニティマスク )…
Windowsでのpython用IDEとして,32bit環境ではPyScripterを愛用しているが,残念ながら64bitのPythonでは使用できない.64bitのpythonに対応したIDEとして,matplotlibなどと親和性の高いSpyderを導入した. Spyder入手 ビルドが面倒なため,ここでは,unoff…
matplotlib(pythonのplotting library)はPyQtに対応している(現状PySideは対応していない模様).次のリンクが参考になりそうだ. SciPy Cookbook — SciPy Cookbook documentation Scipy公式.詳しい. http://matplotlib.sourceforge.net/examples/anima…
PyQt4 (GUIライブラリQtのPython bindings) のセットアップをWindows x64環境で行った作業記録. 0. 作業した環境 Microsoft Windows XP Professional x64 Edition Visual Studio 2008 Professional Edition Python 2.6 (x64) Qt libraries 4.7.2 インストー…
PySideのセットアップ (Windows XP x64 環境) - e405の日記 の補足. PySideのCMakeビルド バッチファイル PySide for Windows 64bit - devlog で配布されているバッチファイルに次の変更を加え使用した: pyside-tools のビルドを追加 build-config.bat へ…
PySide (GUIライブラリQtのPython bindings) のセットアップをWindows x64環境で行った作業記録. 0. 作業した環境 Microsoft Windows XP Professional x64 Edition Visual Studio 2008 Professional Edition Python 2.6 (x64) cmake version 2.8.2 1. Qtの…
PATHに設定した項目が多いとき,記録領域不足のため反映されないことがあるようだ.以下,作業メモ. 設定ファイルの変更 {Windowsフォルダ}\System32\CONFIG.NT の最後("FILES=40"など)の下に SHELL=C:\COMMAND.COM /E:4096 /P 行を追記.再起動する. 参…