メモリアドレス（）は、コンピュータの主記憶装置にアクセスするためにソフトウェアおよびハードウェアによって様々なレベルで使用されるデータ概念である。通常、メモリアドレスは、整数として表示・処理される固定長の数字の列である。メモリアドレスの数値の意味は、CPUの機能（やなど）や様々なプログラミング言語で採用されている配列のようなメモリの使用法に基づいている。
メモリアドレスの種類.
物理アドレス.
論理アドレス.
コンピュータプログラムは、メモリアドレスを使用して機械語を実行し、データを記憶・検索する。初期のコンピュータでは、論理アドレスと物理アドレスは対応していた。仮想記憶の導入以降、ほとんどのアプリケーションソフトウェアは、物理アドレスを使用せず（）でアドレス指定し、コンピュータのメモリ管理ユニットとオペレーティングシステムのメモリマッピングで物理アドレスに変換される。下記を参照。
アドレスの単位.
ワードサイズとアドレスサイズ.
各メモリロケーションの内容.
プログラム内蔵方式のコンピュータ内の各メモリロケーションは、「何らかの」二進数または十進数を保持する。保持された値をどう解釈するか（データ型のデータとしてあるいは命令として）、およびどのように使用するかは、それを取り出して操作する命令によって決定される。
コンピュータウイルスのような自己複製プログラムは、時にはデータとして、時には命令として扱われる。自己書き換えコードは、今日では一般には非推奨とされている。これは、テストやメンテナンスが困難であり、コンピュータのに関するコンパイラやプロセッサの前提によって間違った結果をもたらす可能性があるためである。現在でも細心の注意を払って意図的に使用されることはある。
アプリケーションプログラムにおけるアドレス空間.
現代のマルチタスク環境では、アプリケーションのプロセスは通常、そのアドレス空間に以下のタイプのメモリチャンクを持っている。
アドレス空間の一部は、全くマッピングされないこともある。
アドレス指定方式.
論理アドレスを物理メモリと仮想メモリにマッピングすることで、いくつかのレベルの間接参照も追加される。
メモリモデル.