clock-up-blog

go-mi-tech

N進数計算およびエンコード/デコードのロジック

※なんだか思ったよりも長くなってしまったので、電車の移動時間とかそういう隙間時間の時間潰しにでもご活用いただければと思います。

前書き

今更ですが情報基礎に立ち返り、進数計算について改めて書き起こしてみようと思います。

近年の情報技術はまだまだ発展途上ではありながらもその進歩は目覚ましく、進数計算程度の話であれば、そのロジックはいくらでも探せば転がっていますし、そもそもロジックを意識することなくライブラリ利用により「一般的な生産行為」は済ませられることが多く、そしてそのような選択がほとんどの場合の最適解です。

ただ、あまりにもライブラリ機能に依存するばかりにロジックの理解が疎かになる傾向が広く見られます。プログラムを日々組んでいる方であれば一度は意識したことのある世界だと思いますが、一度通過したきりで忘れがちな世界でもあります。このあたりの理解がおぼろげな方は、是非教養のひとつとして再度意識を向けてみてください。プログラミングにおける「コク」が増します。

なお、記述の厳密さについてですが、あまり文章量が増えるのも良くないので端折れるところは割り切って端折っています。進数について一度くらいはかじったことのある読者を想定しているので、分からない単語等については適宜ググる等してください。

続きを読む

Visual Studio 2017 正式版の導入

2017年3月7日 8:00AM PST あたりに Visual Studio 2017 正式版がリリースされました。
これは日本時間では 2017年3月8日 1:00AM JST あたりのことです。日付変わるの悔しいなー

続きを読む

ccache によるビルド高速化。実例として bitcoin のビルド速度は約30倍になりました。

gcc によるビルドを高速化するミドルウェアとして ccache というものがあります。
詳しい解説は以下が参考になるかと思います。

実導入例

インパクトのある効果例を先に示しておきます。
Amazon EC2 の t2.small (1 vCPU / Mem 2GB) インスタンスにおいて、ccache の無い状態、ccache の有る状態でそれぞれ3回ずつ bitcoin のビルドを試しました。

f:id:kobake:20170307163547p:plain:w500

続きを読む

Azure Web Apps デプロイ時の MissingRegistrationForLocation エラー対策

Visual Studio 2015 にて ASP.NET MVC プロジェクトを作成し、Azure Web Apps へのデプロイを行おうとしたときに、以下のようなエラーが発生してデプロイが行えないトラブルに最近遭遇した。

Following errors occured during the deployment:

Error during deployment for resource 'myproject' in resource group 'mygroup': MissingRegistrationForLocation: The subscription is not registered for the resource type 'components' in the location 'Central US'. Please re-register for this provider in order to have access to this location..
続きを読む
});