【プログラミング】機械語とかアセンブリとか低レベルレイヤーに詳しいプログラマーいる?

1: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:07:33.977 ID:swRlhMZc0Pi
今の現状でもC++とかで書かれた1つのプログラムでLinuxやMacやWindowsのそれぞれのOSに対応することができないであってる???

3: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:08:38.803 ID:zeChO0eXMPi
低レベルの人間性なら持ってるけどダメ?

 

5: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:08:56.697 ID:swRlhMZc0Pi
>>3
ダメ

 

4: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:08:42.602 ID:swRlhMZc0Pi
C++からコンパイルされる機械語やアセンブラは単一でそれぞれのOSで違う訳され方される的な

 

8: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:09:32.456 ID:teqQFbZKrPi
C#ガイジに教えるわけがない

 

9: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:10:26.974 ID:swRlhMZc0Pi
>>8
C#とかなら一度ilに変換してそのOSの中のランタイムがそれぞれの機械語に翻訳してるってのは知ってる

 

14: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:13:38.005 ID:EYzqqZFaaPi
そもそもC#とC++で作ったプログラムの動作方法が違うのになんで比較したがるのか

 

15: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:16:12.772 ID:swRlhMZc0Pi
>>14
いやしたがるじゃなくて今C++がどうやって動いてクロスプラットフォームに対応してるのかしてないのかが知りたい

 

25: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:24:56.103 ID:paUmQNu/0Pi
>>15
ざっくりいうとソースコードは共通でコンパイル時に生成される機械語が違う
だから標準ライブラリの範囲とかだとOSが違っても同じコードで同じように動く
その標準ライブラリが何してるかというとOSごとに異なるシステムコールやAPI呼び出しを行ってる
標準以外のライブラリも同様にOSごとの差異を吸収するように作るから、クロスプラットフォーム対応のライブラリ使う場合は概ね共通のソースが使える
吸収しきれない場合は何かしらの注釈がついてたりする

 

31: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:27:24.371 ID:swRlhMZc0Pi
>>25
なるほどコンパイラか…
つまりC#から機械語もしくはアセンブリ言語へのコンパイラを作ればC#でもローレベルレイヤー(カーネルだのドライバだの)を扱えるってことか

 

35: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:29:49.725 ID:AwKr0eZ70Pi
>>31
作ればっていうか、はたしてそれがC#かというと謎
カーネルだのドライバだのはアドレスを直接叩く必要があるがC#はそんなこと許さないし

 

38: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:34:54.745 ID:swRlhMZc0Pi
>>35
許されないだけでライブラリとして作っちゃえばいいのでは?と素人ながら思うけどどうなのだろ?

 

40: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:36:01.408 ID:AwKr0eZ70Pi
>>38
そのライブラリはアセンブラなりC/C++なりで書くことになるよ
C#からネイティブAPI呼び出しを許すからできなくはないけど

 

43: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:37:29.952 ID:CmvL08qW0Pi
>>38
無理だね

 

52: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:39:45.072 ID:swRlhMZc0Pi
>>43
無理なの?

 

53: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:40:12.185 ID:CmvL08qW0Pi
>>52
公式がそういった仕組みをドットネットランタイムに追加しない限りは無理

 

57: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:41:45.483 ID:swRlhMZc0Pi
>>53
そうなのか…
まだ時期尚早って感じなのかなぁ

 

56: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:41:42.411 ID:paUmQNu/0Pi
>>38
それでいい
共通部分を純粋なコードで書いて環境依存部分を別ライブラリにするのはよくある
移植の際は環境依存部分を作って極力共通部分はノータッチで済むのが望ましい
クラスプラットフォーム環境がやってるのはざっくりいうとそういうこと

 

59: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:42:45.210 ID:swRlhMZc0Pi
>>56
なるほど!

 

30: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:26:22.857 ID:8125p2nJ0Pi
高レベル言語→C++とか
↓それぞれの環境ごとのコンパイラ、インタープリタ
それぞれの環境ごとの機械語(アセンブリ言語)

 

34: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:29:05.244 ID:swRlhMZc0Pi
>>30
なるほど

 

39: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:35:11.734 ID:CmvL08qW0Pi
メモリ管理関連の構文や機能を全てgcに任せてるのでそこらへんをちゃんと実装しなきゃね
そうするとそれはもうC#ではないんだけどね

 

44: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:38:10.739 ID:swRlhMZc0Pi
>>39
それはまぁしょうがない部分ではある
UnityでもGCを無くしたりNativeArrayを使うことでBURSTコンパイルさせるという仕様が追加されたりしてるし
カーネルやドライバを作りたい人だけが意識すればいいかなとは思う

 

42: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:36:58.758 ID:55jOwF5EaPi
プログラミングスレってなんでこんなにマウント取りたがり湧くんだろうな
普通に優しく教えたらいいのに
こんな奴ばっかでうざいからIT辞めた

 

51: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:39:25.082 ID:swRlhMZc0Pi
>>42
ワロタwww
偉そうに言ってるやつには笑顔でそうですね~って言ってて裏では笑っとけばいいねん

 

58: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:42:25.883 ID:xw639s/C0Pi
>>42
優しく教えられる人はこの時間は会社で働いてるだろ

 

60: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:42:53.209 ID:swRlhMZc0Pi
>>58
これ

 

61: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 16:43:45.021 ID:swRlhMZc0Pi
てかこれだけ教えてくれるだけでも優しいと思わないとダメだよね
普通の人ならめんどくさいとかで教えてくれない

 

80: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 18:50:14.797 ID:tYRXPLo40Pi
OS依存かつCPU依存
特に処理速度上げるためにSIMDとか使うならCPUの機能には気を使う必要あり
一度vsとかでC++コンパイル時にアセンブリと機械語を吐き出してみるといいかも

 

84: 以下、5ちゃんねるからVIPがお送りします 2023/03/14(火) 19:33:54.946 ID:swRlhMZc0Pi
>>80
なるほどサンクス

管理人からひと言

わからんけど無理

引用元

【プログラミング】機械語とかアセンブリとか低レベルレイヤーに詳しいプログラマーいる? (2ch.sc)

関連記事

  1. 「HTML」とかの呼び方

  2. ニートだけどプログラムってどうなの?稼げるの?

  3. 2020年以降で需要のあるプログラミング言語(Web系)って何?

  4. ぼくくん、Pythonに挑戦しようとするも環境構築が出来ずに泣く(´;ω;`)

  5. プログラミング勉強しよう→挫折を繰り返してるんだが

  6. カテゴリ_プログラム

    HTML→CSS→Javascript→PHP→SQLと着たウィザード級WEBプログラマーになる俺が…

  7. カテゴリ_プログラム

    どのくらいプログラミングできたらシステムエンジニアになれんの?

  8. カテゴリ_プログラム

    【IT】Node.js 10がリリース、N-APIが安定化しV8非依存に

  9. Macってプログラミングには最適みたいなこと言われるけどそうでもなくね?

コメント

    • 組み込みOS屋
    • 2023年 7月 24日 4:04pm

    つ、inline assemblerで良くねw?

  1. この記事へのトラックバックはありません。

最近の人気記事

  1. カテゴリ_働き方

おすすめ記事

  1. カテゴリ_hardware

新着記事

  1. SES社長だけど質問ある?
  2. windowsにAI搭載するとか言ってるけどさぁ
  3. 新卒エンジニア僕、資格勉強する気が起きない
  4. 文系学部卒一般企業志望の君の進路はここから選んでもらうぞ!→ 営業・販売・未経験…
  5. 正直もうApple<Microsoftになってきたよな

ボンブの戯言

  1. 【ボンブの戯言】ITエンジニアがフリーランスになる理由
  2. 【ボンブの戯言】ITエンジニアが徹夜してでも間に合わせる理由
  3. 【ボンブの戯言】はじめました。
  4. 【ボンブの戯言】フリーランスのメリットを全否定してみた
  5. 【ボンブの戯言】ITエンジニアがフリーランスになるときに考える・準備すること
PAGE TOP