Bahasa mesin: Perbedaan antara revisi
Reno-Sifana (bicara | kontrib) k Menambah istilah dalam bahasa Inggris |
|||
(23 revisi perantara oleh 18 pengguna tidak ditampilkan) | |||
Baris 1: | Baris 1: | ||
[[Berkas:Цифровой код ЭВМ «Минск-22».jpg|jmpl|Kode digital (mesin) “Minsk-22”:]] |
|||
'''Bahasa mesin''' atau '''kode mesin''' merupakan seperangkat instruksi serta data yang dapat dieksekusi secara langsung oleh [[prosesor]] komputer. Kode mesin merupakan tingkatan yang paling rendah dari [[bahasa pemrograman]] dan biasanya digunakan sebagai tujuan kompilasi oleh [[kompiler]] pada bahasa-bahasa pemrograman lain dalam tingkatan yang lebih tinggi. Penerjemahan kode pada bahasa pemrograman interpretatif atau [[bahasa skrip]] umumnya tidak termasuk dalam kriteria tersebut karena umumnya bahasa skrip menerjemahkan kode sumber menjadi [[P-Code]], kode penjembatan antara kode sumber dan kode mesin. Meski demikian, umumnya bahasa skrip populer yang ada saat ini telah menambahkan kompiler JIT (''Just In Time'') integratif yang secara hibrida mengkompilasi instruksi-instruksi P-Code yang paling sering dieksekusi menjadi kode mesin. |
'''Bahasa mesin''' atau '''kode mesin''' ({{Lang-en|Machine code}}) merupakan seperangkat instruksi serta data yang dapat dieksekusi secara langsung oleh [[prosesor]] komputer. Kode mesin merupakan tingkatan yang paling rendah dari [[bahasa pemrograman]] dan biasanya digunakan sebagai tujuan kompilasi oleh [[kompiler]] pada bahasa-bahasa pemrograman lain dalam tingkatan yang lebih tinggi. Penerjemahan kode pada bahasa pemrograman interpretatif atau [[bahasa skrip]] umumnya tidak termasuk dalam kriteria tersebut karena umumnya bahasa skrip menerjemahkan kode sumber menjadi [[P-Code]], kode penjembatan antara kode sumber dan kode mesin. Meski demikian, umumnya bahasa skrip populer yang ada saat ini telah menambahkan kompiler JIT (''Just In Time'') integratif yang secara hibrida mengkompilasi instruksi-instruksi P-Code yang paling sering dieksekusi menjadi kode mesin. |
||
==Instruksi-instruksi kode mesin== |
== Instruksi-instruksi kode mesin == |
||
Setiap prosesor ataupun keluarga prosesor memiliki sejumlah set instruksi kode mesin. Instruksi ini merupakan pola bilangan biner yang merepresentasikan perintah-perintah yang dikenali oleh prosesor tersebut. Karenanya sejumlah prosesor spesifik memiliki sejumlah set instruksi spesifik yang hanya dikenali pada prosesor tersebut, sebagai contoh fitur MMX dalam |
Setiap prosesor ataupun keluarga prosesor memiliki sejumlah set instruksi kode mesin. Instruksi ini merupakan pola bilangan biner yang merepresentasikan perintah-perintah yang dikenali oleh prosesor tersebut. Karenanya sejumlah prosesor spesifik memiliki sejumlah set instruksi spesifik yang hanya dikenali pada prosesor tersebut, sebagai contoh fitur MMX dalam prosesor [[X86]], atau [[3DNow]] dalam keluarga prosesor [[AMD]]. |
||
Pola instruksi ini biasanya merupakan serialisasi dari sejumlah bilangan biner yang digabungkan hingga membentuk ''opcode'' untuk melakukan pemindahan (MOV), lompatan (JMP), operasi |
Pola instruksi ini biasanya merupakan serialisasi dari sejumlah bilangan biner yang digabungkan hingga membentuk ''opcode'' untuk melakukan pemindahan (MOV), lompatan (JMP), operasi aritmetika, penyimpanan (PUSH), ataupun pengambilan nilai (POP), dan lain-lain. Contoh serialisasi tersebut misalnya; kode biner atas instruksi pemindahan adalah 10110 diikuti dengan 3-bit pengenal atas register yang akan digunakan, sedangkan pengenal atas register prosesor AL adalah 000. Dengan demikian perintah untuk memindahkan sebuah nilai ke dalam register prosesor AL adalah 10110000, atau <code>B0</code> dalam bilangan [[heksadesimal]]. |
||
==Program== |
== Program == |
||
{{utama|Program komputer}} |
{{utama|Program komputer}} |
||
Sebuah program pada dasarnya adalah sejumlah set instruksi yang disimpan dalam sejumlah berkas yang dieksekusi oleh prosesor. Alur kontrol yang terdapat pada program merupakan representasi dari serangkaian instruksi lompatan dalam bahasa mesin yang umumnya diawali dengan suatu operasi aritmatis ataupun operasi logikal. |
Sebuah program pada dasarnya adalah sejumlah set instruksi yang disimpan dalam sejumlah berkas yang dieksekusi oleh prosesor. Alur kontrol yang terdapat pada program merupakan representasi dari serangkaian instruksi lompatan dalam bahasa mesin yang umumnya diawali dengan suatu operasi aritmatis ataupun operasi logikal. |
||
==Bahasa rakitan== |
== Bahasa rakitan == |
||
{{utama|Bahasa rakitan}} |
{{utama|Bahasa rakitan}} |
||
[[Bahasa rakitan]] adalah bahasa pemrograman tingkat rendah yang menggunakan simbol-simbol (''mnemonics'') sebagai representasi dari instruksi kode mesin dengan tujuan agar lebih mudah dipahami oleh manusia sehingga memungkinkan sebuah program komputer dibuat secara lebih mudah. |
[[Bahasa rakitan]] adalah bahasa pemrograman tingkat rendah yang menggunakan simbol-simbol (''mnemonics'') sebagai representasi dari instruksi kode mesin dengan tujuan agar lebih mudah dipahami oleh manusia sehingga memungkinkan sebuah program komputer dibuat secara lebih mudah. |
||
==Lihat pula== |
== Lihat pula == |
||
{{Wiktionary|machine code}} |
{{Wiktionary|machine code}} |
||
* [[Bahasa rakitan]] |
* [[Bahasa rakitan]] |
||
Baris 20: | Baris 21: | ||
* [[P-Code]] |
* [[P-Code]] |
||
==Bahan bacaan lain== |
== Bahan bacaan lain == |
||
* {{cite book |
* {{cite book |
||
|first = John L. |
|||
|last = Hennessy |
|||
|authorlink = John L. Hennessy |
|||
|coauthors = [[David A. Patterson (scientist)|Patterson, David A.]] |
|||
|title = Computer Organization and Design. The Hardware/Software Interface. |
|||
|publisher = Morgan Kaufmann Publishers |
|||
|isbn = 1-55860-281-X |
|||
}} |
}} |
||
* {{cite book |
* {{cite book |
||
|first = Andrew S. |
|||
|last = Tanenbaum |
|||
|authorlink = Andrew S. Tanenbaum |
|||
|title = Structured Computer Organization |
|||
|year = 1990 |
|||
⚫ | |||
|url = https://archive.org/details/structuredcomput0000tane |
|||
⚫ | |||
⚫ | |||
⚫ | |||
}} |
}} |
||
* {{cite book |
* {{cite book |
||
|first = J. Glenn |
|||
|last = Brookshear |
|||
|title = Computer Science: An Overview |
|||
|year = 2003 |
|||
⚫ | |||
|url = https://archive.org/details/computerscienceo0007broo |
|||
⚫ | |||
⚫ | |||
⚫ | |||
}} |
}} |
||
{{Authority control}} |
|||
[[Kategori:Bahasa pemrograman|Mesin]] |
[[Kategori:Bahasa pemrograman|Mesin]] |
Revisi terkini sejak 22 September 2024 04.22
Bahasa mesin atau kode mesin (bahasa Inggris: Machine code) merupakan seperangkat instruksi serta data yang dapat dieksekusi secara langsung oleh prosesor komputer. Kode mesin merupakan tingkatan yang paling rendah dari bahasa pemrograman dan biasanya digunakan sebagai tujuan kompilasi oleh kompiler pada bahasa-bahasa pemrograman lain dalam tingkatan yang lebih tinggi. Penerjemahan kode pada bahasa pemrograman interpretatif atau bahasa skrip umumnya tidak termasuk dalam kriteria tersebut karena umumnya bahasa skrip menerjemahkan kode sumber menjadi P-Code, kode penjembatan antara kode sumber dan kode mesin. Meski demikian, umumnya bahasa skrip populer yang ada saat ini telah menambahkan kompiler JIT (Just In Time) integratif yang secara hibrida mengkompilasi instruksi-instruksi P-Code yang paling sering dieksekusi menjadi kode mesin.
Instruksi-instruksi kode mesin
[sunting | sunting sumber]Setiap prosesor ataupun keluarga prosesor memiliki sejumlah set instruksi kode mesin. Instruksi ini merupakan pola bilangan biner yang merepresentasikan perintah-perintah yang dikenali oleh prosesor tersebut. Karenanya sejumlah prosesor spesifik memiliki sejumlah set instruksi spesifik yang hanya dikenali pada prosesor tersebut, sebagai contoh fitur MMX dalam prosesor X86, atau 3DNow dalam keluarga prosesor AMD.
Pola instruksi ini biasanya merupakan serialisasi dari sejumlah bilangan biner yang digabungkan hingga membentuk opcode untuk melakukan pemindahan (MOV), lompatan (JMP), operasi aritmetika, penyimpanan (PUSH), ataupun pengambilan nilai (POP), dan lain-lain. Contoh serialisasi tersebut misalnya; kode biner atas instruksi pemindahan adalah 10110 diikuti dengan 3-bit pengenal atas register yang akan digunakan, sedangkan pengenal atas register prosesor AL adalah 000. Dengan demikian perintah untuk memindahkan sebuah nilai ke dalam register prosesor AL adalah 10110000, atau B0
dalam bilangan heksadesimal.
Program
[sunting | sunting sumber]Sebuah program pada dasarnya adalah sejumlah set instruksi yang disimpan dalam sejumlah berkas yang dieksekusi oleh prosesor. Alur kontrol yang terdapat pada program merupakan representasi dari serangkaian instruksi lompatan dalam bahasa mesin yang umumnya diawali dengan suatu operasi aritmatis ataupun operasi logikal.
Bahasa rakitan
[sunting | sunting sumber]Bahasa rakitan adalah bahasa pemrograman tingkat rendah yang menggunakan simbol-simbol (mnemonics) sebagai representasi dari instruksi kode mesin dengan tujuan agar lebih mudah dipahami oleh manusia sehingga memungkinkan sebuah program komputer dibuat secara lebih mudah.
Lihat pula
[sunting | sunting sumber]Bahan bacaan lain
[sunting | sunting sumber]- Hennessy, John L. Computer Organization and Design. The Hardware/Software Interface. Morgan Kaufmann Publishers. ISBN 1-55860-281-X.
- Tanenbaum, Andrew S. (1990). Structured Computer Organization. Prentice Hall. ISBN 0-13-020435-8.
- Brookshear, J. Glenn (2003). Computer Science: An Overview. Addison Wesley. ISBN 0321387015.