プログラム

詳説 画像処理プログラミング

詳解 画像処理プログラミング作者: 昌達慶仁出版社/メーカー: SBクリエイティブ発売日: 2008/03/27メディア: 単行本購入: 6人 クリック: 162回この商品を含むブログ (28件) を見る大学の生協で15%オフのキャンペーンをやっていたので、少々高かったけど買っ…

gcc拡張で手軽にベクタ命令

int v __attribute__((vector_size(16))); とすると、v はサイズが16byteで各要素がint型であるベクタである。 int が 4byte だとすると、結果的に v は4つの要素を持つことになる。 このようにして定義されたベクタは + (add) - (sub) * (mul) / (div) unar…

Project Euler を始めてみた

Project Euler コンピュータで数学の問題を解いていくサイト。 俺の現在のスコアは220問中28問。Level.1 です。 一応最初の方から順に解いていってる。使っているのはC。 多倍長演算が必要そうな場面では gmp を利用してる。 まぁいろいろな問題があるわけだ…

Python より Ruby

うへぇ、風邪ひいた。。。 人と話していると喉の痛みが地味にこたえる。ネットのテキスト文化万歳! ここ一週間くらい Ruby と Python を学んでるんだけど、小規模のスクリプトを書くにあたって俺にあっているのはどうやら Ruby のようだ。 俺の感じたそれぞ…

otool -L 相当のことをやる

Mach-O のフォーマットや Universal Binary のフォーマットを調べながら、otool -L 相当 (Linux でいうところの ldd) を自前でやってみた。 あ、ちなみに自分の cputype は i386 だと決めうちしてます。 #include <stdio.h> #include <stdlib.h> #include <mach-o/loader.h> #include <mach-o/fat.h> #define SW</mach-o/fat.h></mach-o/loader.h></stdlib.h></stdio.h>…

QObject のメモリ管理

まずはサンプルコード sample.h #ifndef SAMPLE_H #define SAMPLE_H #include <QtCore> class A : public QObject { Q_OBJECT public: A(int i_, QObject *parent = NULL) : QObject(parent), i(i_) {} virtual ~A() { qDebug("A destructor called"); } int value()</qtcore>…

Qt はじめました

なんか GUI で作りたいなー、と思って Qt を使い始めました。 $ sudo port install qt4-mac +cups+dbus+demos+docs+examples+nis+sqlite+ssl これだけでインストール完了。 ドキュメントのダウンロードや、デモとかサンプルのビルドをしたためか、インストー…

改行が入力されるのを待つことなくタイプされたキーを受けとる方法

今までやりたくてもやれなかったけど、最近やり方を知ったのでここに書いておく。 日本語が不自由なのでこんなタイトルになってしまったけど、要するに「何かのキーがタイプされるまでブロックし、タイプされた瞬間にブロックを解く」ってカンジね。 Press a…

こんなところで GMP が役立つとは

一昨日ちょこっと書いた重複ファイル検索ツールは、各ファイルのパスとハッシュ(SHA-1)を記憶しておいて、qsort & bsearch で検索、 ってなカンジの適当実装だったんだけど、1500 くらいのファイルがあるディレクトリを検索するのに15秒くらいかかったんだよ…

STL-like な iterator で repeated なデータを列挙

昨日書いたコードは int size = bar.baz_size(); for (int i = 0; i < size; i++) { cout << "bar.baz[" << i << "].type: " << bar.baz(i).type() << endl; } $ ./read bar.baz[0].type: 0 bar.baz[1].type: 1 bar.baz[2].type: 2 このようにして、repeated…

Protocol Buffer を使ってみた

まだ全然ドキュメントとか読んでないけど。 マイコミジャーナルで紹介されてたのを読んでいたら、興味がわいてきた。 http://journal.mycom.co.jp/articles/2008/07/18/protocolbuffer/menu.html まずはインストールから。 なんと、既に MacPorts でインスト…

最短コードで世界のナベアツ

今日大学で、友人から 某大学で、どれくらい短い Java のコードで世界のナベアツを再現できるか、というコンテストがあったらしいよ ってことを聞いたので、俺もやってみようと思った。 1から40まで表示して、3の倍数と3のつく数字のときには、その数字の隣…