2005-07-08から1日間の記事一覧

これで最後・・・かな?

strncmp()とおそらく同等の動作をするもの。というかmemcmp()か? int _strncmp(void *buf, void *str, size_t size){ int *b = (int *)buf; int *s = (int *)str; unsigned int k = size >> 2; for(unsigned int i=0;i

手間の割に

3つ目の引数、sizeの指定において0でないという仮定ができるとすれば、for文ではなくdo〜while文を用いることでもう少し削れそうです。 上のintncmp()では dec eax @2: mov ebx,dword ptr [ecx+4*eax] xor ebx,dword ptr [edx+4*eax] je short @3 mov eax,1 …

もう少し引っ張ってみる

先日のintncmp()だのintcmp()だのは何がしたかったかというと、x86+Windowsを前提に考えると現状では32bitレジスタを使うわけで、char(8bit)同士の比較ではせっかくの32bitレジスタも下位8bitのみしか使わないので効率が悪いではないか、ということが言いた…

早起き->残業->遅起き

研究室に残っていたのがいい具合にコンバータの役割を果たしたらしく、昼起床の人間に逆戻り>< 昨日はAdminの作業を横から眺める研修員状態。時折口出しをするくらい。夏になったら実験がてらWindowsServerのライセンスをいただいて入れるかな・・・。先日…

結局もう1パターン

int _strncmp(void *buf, void *str, size_t size){ int *b = (int *)buf; int *s = (int *)str; unsigned int k = size >> 2; for(unsigned int i=0;i

微妙、とか言ってみたりする

http://www.watch.impress.co.jp/akiba/hotline/20050709/ni_i_m4.html#tk7m \24kも払ってKN400AでRTL8100Cなボードとは・・・。 FlexATXでGeodeNX対応というところには価値があるかもしれませんが、個人的にはどうかと思います。i82541が載っているならまだ…