Gaya Hidup

Ketergantungan Mesin dan Optimasi Kode Independen Mesin dalam Teknologi, pengertian, perbedaan

Perbedaan Utama – Ketergantungan Mesin & Optimasi Kode Independen Mesin 

Program komputer merupakan kumpulan instruksi yang diberikan kepada perangkat keras, untuk melakukan tugas. Program-program ini sebagian besar ditulis dalam bahasa tingkat tinggi, dan komputer tidak mengerti bahasa itu.

Oleh karena itu, kompiler digunakan untuk mengubah instruksi tersebut menjadi kode mesin atau kode target. Itu melewati beberapa fase untuk membangun kode target.

Optimalisasi kode, merupakan istilah yang mengacu pada salah satunya. Ada dua teknik pengoptimalan seperti, pengoptimalan kode yang bergantung pada mesin dan yang tidak bergantung pada mesin.

Perbedaan yang jelas dari mereka, pengoptimalan kode yang bergantung pada mesin dan yang tidak bergantung pada mesin adalah pengoptimalan yang bergantung pada mesin diterapkan pada kode objek sementara pengoptimalan kode yang tidak bergantung pada mesin diterapkan pada kode perantara.

ISI

  1. Ikhtisar dan Perbedaan Utama 2. Apa itu Optimasi Kode Ketergantungan Mesin3.

    Apa itu Optimasi Kode Independen Mesin4. Kemiripan Antara Ketergantungan Mesin dan Optimasi Kode Independen Mesin5.

    Perbandingan Berdampingan – Optimasi Kode Independen Mesin & Mesin Independen dalam Bentuk Tabular 6. Ringkasan

Pengertian Optimasi Kode Ketergantungan Mesin?

Saat mengubah kode sumber menjadi kode objek atau kode target, kompiler melewati beberapa fase.

Pertama, source code diberikan ke Lexical analyzer yang menghasilkan token. Kemudian, output diberikan ke penganalisa sintaks yang menyelidiki apakah token yang dihasilkan berada dalam urutan logis.

Output itu diberikan ke penganalisa semantik. Asumsikan ada potongan kode sebagai p = q + r;

Di sini, p, q, merupakan istilah yang mengacu pada bilangan bulat, tetapi r adalah pelampung.

Menggunakan penganalisa semantik, variabel integer c diubah menjadi float. Oleh karena itu, ia melakukan analisis semantik.

Output dari penganalisa semantik masuk ke generator kode Menengah. Ini mengembalikan kode perantara yang kemudian masuk ke pengoptimal kode.

Optimalisasi kode adalah proses menghilangkan pernyataan program yang tidak penting tanpa mengubah arti dari kode sumber yang sebenarnya. Ini bukan pengoptimalan wajib tetapi, ini dapat meningkatkan waktu berjalan dari kode target.

Keluaran dari pengoptimal kode diberikan ke pembuat kode, dan akhirnya, kode target dibuat. Dalam pengoptimalan kode yang bergantung pada mesin, pengoptimalan diterapkan ke kode sumber.

Mengalokasikan sumber daya yang cukup dapat meningkatkan pelaksanaan program dalam pengoptimalan ini.

Pengertian Optimasi Kode Independen Mesin?

Ketika pengoptimalan dilakukan pada kode perantara, ini disebut pengoptimalan kode independen mesin. Ada berbagai teknik untuk mencapai pengoptimalan kode independen mesin.

Mereka dijelaskan menggunakan contoh berikut. Baca baris kode di bawah.

untuk (j= 0; j<10; j ++) {

b = x+2;

a[j] = 5*j;

}

Menurut kode di atas, b = x+2 dihitung berulang kali di setiap iterasi. Setelah b dihitung, itu tidak berubah.

Jadi, baris ini dapat ditempatkan di luar lingkaran sebagai berikut. b = x+2;

untuk (j=0; j< 10; j++)

{a[j] = 5 * j;

}

Ini disebut gerakan kode.

Baca baris kode di bawah. j=5;

jika (j == 10) {

a = b+20;

}

Menurut kode di atas, ‘blok if’ tidak akan pernah dieksekusi karena nilai j tidak akan pernah sama dengan 10.

Ini sudah diinisialisasi ke nilai 5. Oleh karena itu, blok if ini dapat dihapus.

Teknik ini, merupakan istilah yang mengacu pada eliminasi kode mati. Metode lain adalah pengurangan kekuatan.

Operasi aritmatika seperti perkalian memerlukan lebih banyak memori, waktu, dan siklus CPU. Ekspresi mahal ini dapat diganti dengan ekspresi murah seperti b = a * 2; atau bisa diganti dengan penjumlahan, b = a + a;

Lihat kode di bawah ini.

untuk (j=1; j <= 5; j ++) {

nilai = j * 5;

}

Alih-alih perkalian, kode dapat diubah sebagai berikut. int suhu = 5;

untuk (j=1; j<=5; j++) {

suhu = suhu + 5;

nilai = suhu;

}

Dimungkinkan untuk mengevaluasi ekspresi yang merupakan konstanta saat runtime.

Ini disebut pelipatan konstan. Dapat dinyatakan seperti b[j+1] = c [j+1];

Sebaliknya, itu dapat diubah sebagai berikut.

n = j+1;

b[n] = c[n];

Mungkin ada loop sebagai berikut. untuk (j=0; j<5; j++) {

printf(“an”);

}

untuk (j=0; j <5; j++) {

printf(“bn”);

}

Mencetak a dan b, keduanya memiliki jumlah iterasi yang sama.

Keduanya dapat digabungkan menjadi satu untuk loop sebagai berikut. untuk (j=0; j <5; j++) {

printf(“an”);

printf(“bn”);

}

Teknik penting lainnya adalah eliminasi subekspresi umum.

Itu untuk mengganti ekspresi identik dengan satu variabel untuk melakukan perhitungan. Lihat kode di bawah ini.

a = b*c + k;

d = b* c + m;

Kode ini dapat dikonversi sebagai berikut. suhu = b*c;

a= suhu + k;

d= suhu + m;

Tidak perlu menghitung b*c lagi dan lagi.

Nilai yang dikalikan dapat disimpan dalam variabel dan digunakan kembali.

Apa Persamaan Antara Ketergantungan Mesin dan Optimasi Kode Independen Mesin?

  • Keduanya milik pengoptimalan kode

Apa Perbedaan Antara Ketergantungan Mesin dan Optimasi Kode Independen Mesin?

Ketergantungan Mesin & Optimasi Kode Independen Mesin

Optimalisasi kode yang bergantung pada mesin diterapkan pada kode objek.

Optimalisasi kode yang tidak tergantung mesin diterapkan pada kode perantara.

Keterlibatan dengan Perangkat Keras

Pengoptimalan yang bergantung pada mesin melibatkan register CPU dan referensi memori absolut.

Optimalisasi kode independen mesin tidak melibatkan register CPU atau referensi memori absolut.

Ringkasan – Optimasi Kode yang Tergantung Mesin & Mesin Independen

Optimalisasi kode terdiri dari dua teknik pengoptimalan yaitu, pengoptimalan kode yang bergantung pada mesin dan yang tidak bergantung pada mesin. Perbedaan antara pengoptimalan kode yang bergantung pada mesin dan yang tidak bergantung pada mesin, merupakan istilah yang mengacu pada pengoptimalan yang bergantung pada mesin diterapkan pada kode objek sedangkan pengoptimalan kode yang tidak bergantung pada mesin diterapkan pada kode perantara.

Unduh Versi PDF Optimasi Mesin Tergantung Mesin & Mesin Independen

Anda dapat mengunduh versi PDF dari artikel ini dan menggunakannya untuk tujuan offline sesuai catatan kutipan. Silakan unduh versi PDF di sini Perbedaan Antara Ketergantungan Mesin dan Optimasi Kode Independen Mesin

Referensi:

1.“Desain Penyusun | Pengoptimalan Kode.” GeeksforGeeks.

Tersedia di sini 2.Point, Tutorial. “ Desain Compiler – Pengoptimalan Kode.” Www.tutorialspoint.com, Tutorials Point, 15 Agustus 2017.

Tersedia di sini 3.Estudies4you. “Materi Studi JNTUH CSE.” Perbedaan antara Ketergantungan Mesin dan Optimasi Kode Independen.

Tersedia disini

Kesopanan Gambar:

1.’Kompiler’ Oleh I, Surachit, (CC BY-SA 3.0) melalui Commons Wikimedia