[過去ログ] 【初心者歓迎】C/C++室 Ver.102【環境依存OK】 (1002レス)
前次1-
抽出解除 必死チェッカー(本家) (べ) 自ID レス栞 あぼーん

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
29
(1): はちみつ餃子 ◆8X2XSCHEME [sage] 2017/11/08(水) 03:38:56 ID:xvDlz0If(1/4) AAS
ちょっとした演算よりメモリアクセスの方が遅いこともあるよ。
本当に配列が最速?
(試したわけではないので配列が最速かもしれない……)
40
(1): はちみつ餃子 ◆8X2XSCHEME [sage] 2017/11/08(水) 13:02:27 ID:xvDlz0If(2/4) AAS
>>37
37(2): デフォルトの名無しさん [sage] 2017/11/08(水) 12:27:45 ID:2VVChtYT(1/2) AAS
&&って条件分岐が入るけど、本当に高速?
&& では分岐しなかった。
'0' <= c && c <= '9' を clang で -O3 付きでコンパイルしてみたらこうなった。

addl $-48, %eax
cmpl $10, %eax
setb %al

賢いな!
直後に分岐するなら結果をレジスタに書き込む必要はないから実質的に二命令だ。
42
(2): はちみつ餃子 ◆8X2XSCHEME [sage] 2017/11/08(水) 18:14:28 ID:xvDlz0If(3/4) AAS
もっと >>40 を高速化できないかと思って考えてみたが、
'0' を引くんじゃなくて 0x30 と xor を取ってから 10 より小さいか比較するっていうのでもいける。

ただ、最近はビット演算が算術命令より速いとも限らないみたいなんだよね〜
44: はちみつ餃子 ◆8X2XSCHEME [sage] 2017/11/08(水) 18:37:11 ID:xvDlz0If(4/4) AAS
>>42-43
Z80 ですら足し算と XOR は 1 クロックだったわ。 スマソ
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.049s