2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

低レベルなプログラミングとは?

Last updated at Posted at 2023-05-23

はじめに

レベルが低いプログラミングを指す言葉ではありません。

低レベルなプログラミングとは

低レベルなプログラミングは、コンピュータのハードウェアやアーキテクチャに直接アクセスする方法です。
これにより、細かい制御や高速な処理が可能になりますが、同時に複雑さも増します。

例えば、低レベルのプログラミング言語としては、アセンブリ言語があります。
アセンブリ言語では、コンピュータの命令セットアーキテクチャに基づいて、機械語に近い形でプログラムを書きます。
具体的な処理を命令の塊(アセンブリコード)として表現することができます。

一番シンプルな例

アセンブリ言語の一番シンプルな例として「Hello, World!」を表示するプログラムは以下のようなものです。

section .data
    hello db 'Hello, World!'

section .text
    global _start

_start:
    ; writeシステムコールの準備
    mov eax, 4
    mov ebx, 1
    mov ecx, hello
    mov edx, 13

    ; writeシステムコールの実行
    int 0x80

    ; プログラム終了の準備
    mov eax, 1
    xor ebx, ebx
    int 0x80

コードの説明

このアセンブリコードは、Linux環境で実行されることを想定しています。_startというエントリーポイントからプログラムが始まります。
このプログラムでは、まずhelloというメッセージをメモリ上に定義します。その後、writeシステムコールを使用して、メッセージを標準出力に表示します。
最後に、exitシステムコールを使用してプログラムを終了させます。

終わりに

このように、低レベルなプログラミングでは、具体的なメモリアドレスやレジスタの値を直接操作する必要があります。
そのため、より高度な抽象化や自動化は提供されませんが、それにより細かい制御が可能になります。

ただし、低レベルなプログラミングは初心者にとっては難しいです。
一般的には、高レベルなプログラミング言語(例:Python、Java、C++)を使った方が簡単で効率的な開発ができます。

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?