int add(int a, int b) { while (b != 0) { int c = (a & b) << 1; a ^= b; b = c; } return a; } はい。この関数では足し算(演算子)を使わずに、ビット演算とループだけで足し算(加算)を実現しています。いわゆる全加算器ってやつで、これと同じ事が電気回路的に行われるのがCPUにおける足し算(演算子)です。 ざっくり解説しますと、一時変数cには各桁のキャリーを計算しています。キャリーはこんな真偽値表なので、 abc
int add(int a, int b) { while (b != 0) { int c = (a & b) << 1; a ^= b; b = c; } return a; } はい。この関数では足し算(演算子)を使わずに、ビット演算とループだけで足し算(加算)を実現しています。いわゆる全加算器ってやつで、これと同じ事が電気回路的に行われるのがCPUにおける足し算(演算子)です。 ざっくり解説しますと、一時変数cには各桁のキャリーを計算しています。キャリーはこんな真偽値表なので、 abc
HTML の DOM 操作を良い感じで隠蔽してくれる Ractive.js というライブラリを紹介します。 本記事は VirtualDOM Advent Calendar 2014 の13日目の記事です。 VirtualDOM といえば React だ、と言わんばかりの流れですが、本記事では敢えて Ractive.js を取り上げます。Ractive.js が VirtualDOM かって? 確かめてみましょう。 良し、大丈夫。VirtualDOMです。 Ractive.js とは? Ractive.js は本家サイトの説明を借りれば、テンプレートドリブンなUIライブラリです。なんのこっちゃわからないでしょうね。 まずVirtualDOMのメリットとは 生のDOMを直接操作しなくても、JavaScriptのオブジェクトだけを操作すれば、上手いこと自動的に書き換えてくれる ことだと言えます。
mattnさんのエントリを読んでいたら懐かしくなったので思い出話でも。 当時私は大学生で、自宅、研究室、バイト先の3箇所で開発をしていた。Visual C(Studioの前身)、ViVi、jvimなんかを使ってプログラムを書いていたと記憶している。jvimのサイトにはgvim(version 5)のバイナリがあったので試してみたが、ろくに設定もされていなかったもんだから「ああjvimで良いな」と思ったものだった。 ところがふとしたことから本家のVimのマニュアルを読み、添付されているサンプルの設定(vimrc_example, gvimrc_example)を利用したとき、私に衝撃が走る。それまで書いていたC、Perl、TeXのコードがカラフルに色づけされていた。圧倒的に読みやすい。今では珍しくないシンタックスハイライトも当時はキーワードハイライトが出始めた頃でまだ珍しかった。しかもvim
ローマ字入力から日本語を(インクリメンタルに)検索するための正規表現を生成するMigemoを配布しています。 概要 ローマ字入力から日本語を(インクリメンタルに)検索するための正規表現を生成するRuby/Migemoというライブラリがあります。それをVimに組み込むためにC言語でC/Migemoとしてライブラリに書き起こし公開しています。ソースコードに辞書ファイルは含まれていませんが、インターネットに接続された環境ではライブラリのビルド時に自動的にダウンロードされます。 ダウンロード Windowsバイナリ(DLL) 下のリンクから適切なバージョンを選択してダウンロードしてください。 C/Migemo for Windows 32bit C/Migemo for Windows 64bit ソースコード 完全なソースコードは https://github.com/koron/cmigemo
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く