2021-01-02

anond:20210102190253

今どきのコンパイラっていうかCPUISA次第だろ。

INCとADDもつISA場合アセンブリコードは変わってくるし。

マルチスレッド環境では後者場合排他制御意識しなくてはいけない。

記事への反応 -
  • i++;はINC i=i+1;はADD CPU上の通る回路が違う。 通る回路が違うというのは、わかりやすく言うと、消費電力が違う。 そういうのも全部計算するのが厳密にはC言語

    • i++;というのはレジスター制御命令という命令を呼び出せということであり i=i+1;というのは算術命令を呼び出せ といういみであり1を加算しろというだけではない。 レジスター制御命令...

      • 算術命令だとレジスタを使わないと思ってるの?

        • 算術演算中にレジスターを使うのか?すごくわかりやすく言うと 加算に3クロックかかる場合、真ん中の1クロックがどうして、レジスターが空いていないんだ? 通常はレジスターから...

          • 今どきのコンパイラだとi++とi+=1は等価だよ つか変数にiを使ってる時点で老害ってわかる

            • 今どきのコンパイラっていうかCPUのISA次第だろ。 INCとADDをもつISAの場合アセンブリコードは変わってくるし。 マルチスレッド環境では後者の場合、排他制御も意識しなくてはいけない。

              • INCとADDをもつISAの場合アセンブリコードは変わってくるし。 最適化により同じになるって話が理解できないアホ

    • INCとADDで回路が違うとか笑かす CPUが命令ごとにあるとか思ってんの? 最近の最適化が強力なコンパイラだとどっち使っても同じだよ

      • まともなプログラマなら大学で論理回路組んで4bitCPU作ったりコンパイラ自作したりすると思うけど、 テック○○とか数ヶ月で就業して断片的な知識しかないコーダーって将来どうすんの...

        • 60手前の高卒COBOLおじさんとかSES界隈じゃ見かけるしなんとかなんだろ

        • おじいちゃん、今は分業が進んでるからハードウェア(本質的にはソフトウェアだけど)はやらなくてもいいのよ

          • というかできない。だがそれは、レーサーが車のことをしらなくていいのよ。というのと同じ世界だ。 どうやってハードが動いているか?というのを理解して、なるべくハード様のため...

            • あるいみIntelよ汝が望むとおりにじゃじゃ馬を作れ、おれたちが乗りこなす。

              • あの、アクセラレーションブーストがなぜ通常は遅くなるか?って思わないのか?アクセラレーションブーストは通常は遅くなる技術なんだよ。CPUよ汝が望むとおりに動け。

            • そこまでカリカリにやる必要がある人はプロでもごく一部だろ

            • そこまでカリカリにやる必要がある人はプロでもごく一部だろ

            • そこはミドル屋とかライブラリ屋の領分だな

        • テックの次の稼げる非士業を転々とするんだろうな

    • いや最近のコンパイラは賢いぞ

記事への反応(ブックマークコメント)

ログイン ユーザー登録
ようこそ ゲスト さん