dポイントプレゼントキャンペーン実施中!

プログラム言語について
c言語もコードによって機械語に通訳されると知りました。直接機械が通訳しなくても良い01コーンパイルの言語を使えば最速に動かせると思います。言語が分からなくてもコーンパイル実行後の言語を表示させて開発したら良いのでは無いのでしょうか?

A 回答 (13件中1~10件)

両方とも少しだけ勉強してみて気に入った方で開発されたら良いかもしれません。

    • good
    • 0
この回答へのお礼

お答えありがとうございます

お礼日時:2024/06/22 21:04

初期の8bit機はHexで書いてました、ただスタックレジスタや


データーの待避や取り出しなど数多くの命令を書かなくては
ならず今のCPUなら書いていられないでしょう。
    • good
    • 1
この回答へのお礼

お答えありがとうございます

お礼日時:2024/06/22 23:01

昔は、そうやってたんですよ。


コンパイラの出すコードがろくなもんじゃなかった時代には、
高級言語で書いて動くようになったら、速度に関わる部分だけ
アセンブラで書き直してたんです。今は、コンパイラの性能が
よくなって、そこまでやることは少ないんでしょうけど。
    • good
    • 0
この回答へのお礼

お答えありがとうございます

お礼日時:2024/06/22 23:01

はい、それがアセンブリで表示出来て、最速です。



しかし問題があって、これは可読性が低いのと、各端末に最適化する必要があるのと、メモリ解放など全ての処理は自分で行う必要があります。

Windows用とMac用、スマホ用とゲーム機用と〜などそれぞれに最適化する必要があるんですね
しかも何を処理しているか分かりにくい

これを読みやすくしたものがC言語になり、色々と基本的な動きを共通化して簡単に作れるようにしたものがC++になっています。

更に誰でも作りやすく、一つ書けばWindowsでもMacでも動く、
メモリ管理も自動でバグが少なく作れるようにしたのがC#やJavaです。

なので組み込み系をしないのであればC#で作れば良いかと思いますよ
オンボロパソコンとかではなければ処理速度が速いので、体感できる違いが出ないですしね
    • good
    • 0
この回答へのお礼

お答えありがとうございます

お礼日時:2024/06/22 23:01

機械が理解するのはマシン語だけです。



でもマシン語は機械の数だけありますし、単純な操作であってもコードを何行も書かなければなりません。そもそも数字の羅列でしかないのです。マシン語をみて何をしているか分かる人なんていません。

高級言語でコンパイルした結果も当然に数字の羅列です。歴史的にみれば最初はマシン語、それをもう少しわかりやすくしたアセンブラ、そしてフォートランなどの高級言語というように発展してきたんですよ。

いまさらアセンブラや機械語で組むなんて非効率なことはできません。
    • good
    • 0
この回答へのお礼

お答えありがとうございます

お礼日時:2024/06/22 23:01

コーンパイル → コンパイル ですね。


言語が分からなかったら、開発できないような気がします。
ちょっと前(40年ちょい前)は、コンピュータの性能が低かったこともあり、マシン語で開発する人もそれなりにいました。
    • good
    • 0
この回答へのお礼

お答えありがとうございます

お礼日時:2024/06/22 23:02

Quoraで意味不明な言葉遣いで意味不明な質問連発してますね

    • good
    • 0
この回答へのお礼

お答えありがとうございます

お礼日時:2024/06/22 23:02

>書き間違えが無ければ機械語で書きた方が1番バグ、安定性が出ますね



出ません。機械語で命令を1つ間違えただけでも無限ループになって取り返しのつかない事態になることだってあり得ます。
それを発見するには、結局実行しないといけないので、最悪ハードウェアを何度も壊しかねない状況も起こりえます。

むしろ今時の高級言語の場合、コンパイラーやリンターを使って処理の間違いをエラー、警告として出せるので、実行しないとわからないと言う事態は簡単に起きません。
    • good
    • 0
この回答へのお礼

お答えありがとうございます c++になると言語の組み合わせが難しいのよくわかりました

お礼日時:2024/06/22 10:27

貴方まずはアセンブリ言語について勉強してみたら良いと思います。



そして、簡単なプログラムで構わないのでアセンブリ言語、C言語、python など複数の言語で作って比べてみたら良いと思います。
    • good
    • 1
この回答へのお礼

お答えありがとうございます

お礼日時:2024/06/22 10:28

機械語自体は、CPUのレジスターに対して、データを読み込む、足し算をする、データを書き込むという命令の繰り返しですので、高級プログラミング言語なら1行で済む処理を機械語で書こうとすると何十命令に及ぶこともよくあります。



さらにはライブラリーやフレームワークによって、よく使われる処理がまとめられている現代においては、機械語だけでプログラミングしようとなれば、それらもいちいち機械語で繰り返し手打ちしないといけないため、同じようなプログラムを作るにしても100倍以上の労力が必要になってしまいます。

昔であれば、性能の低い組み込み型のマイコンの向けのプログラムを作る上では、なるべく効率の良い処理で高速化を狙う理由で、機械語やアセンブリ言語を使うことがありましたが、最近ではC言語やC++を採用するようになっています。
処理の最適化を狙うよりも、規模の大きなプログラムを短時間で作ることの方が優先されています。

最近では組み込み型のマイコンでも十分高速な処理ができるようになったので、処理効率追求のために機械語やアセンブリ言語を選択しなくても十分実用的なプログラムが作れます。

ましてやパソコンやスマホとなれば、一般向けではオーバースペックなほどですので、むしろユーザーフレンドリーな操作系を提供することの方が重要視されています。
    • good
    • 0
この回答へのお礼

お答えありがとうございます cc++もあらかじめ決められた動作を短くしてるんですね バクが完全に無くなるのは難しいですか書き間違えが無ければ機械語で書きた方が1番バグ、安定性が出ますね

お礼日時:2024/06/22 10:13

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人はこんなQ&Aも見ています


このQ&Aを見た人がよく見るQ&A