Setelah mempelajari Java selama beberapa waktu, saya yakin semua orang telah mampu memahami pentingnya jvm, namun Anda mungkin tidak tahu banyak tentang sistem instruksi di dalamnya. Secara harfiah, ini adalah alat untuk memanggil instruksi. Mengenai beberapa pengenalan konten tertentu, kami akan menunjukkannya kepada Anda di bawah ini dan membagikannya kepada Anda tentang pendaftaran jvm. Mari kita masuki pembelajaran hari ini bersama-sama.
1. Deskripsi sistem instruksi
Sistem instruksi JVM sangat mirip dengan sistem instruksi komputer lainnya. Pada saat yang sama, instruksi Java juga mencakup dua bagian: opcode dan operan. Opcode merupakan bilangan biner 8-bit yang diikuti operan yang panjangnya ditentukan sesuai kebutuhan. Kode operasi digunakan untuk menentukan sifat operasi instruksi (di sini kami menjelaskannya dalam bentuk simbol perakitan). "DAN" dari dua bilangan bulat. ,ret mewakili kontrol proses, dikembalikan dari panggilan ke suatu metode. Ketika panjangnya melebihi 8 bit, operan dibagi menjadi beberapa byte untuk disimpan. Untuk situasi ini, JVM mengadopsi metode pengkodean "bigendian", yaitu bit tinggi terletak di byte rendah. Situasi ini sama dengan metode pengkodean yang digunakan oleh Motorola dan RISCCPU, tetapi berbeda dengan metode pengkodean "littleendian" yang digunakan oleh Intel, yaitu bit tingkat rendah menyimpan byte tingkat rendah.
Sistem perintah java dirancang untuk mengimplementasikan bahasa Java. Ini berisi instruksi untuk memanggil metode dan memantau sistem multi-prioritas. Panjang opcode 8-bit di JVM membuat JVM memiliki maksimal 256 instruksi, dan sekarang lebih dari 160 instruksi digunakan.
2. Register yang umum digunakan
Semua CPU berisi kumpulan register yang menyimpan status sistem dan informasi yang diperlukan oleh prosesor. Ketika mesin virtual menentukan lebih banyak register, lebih banyak informasi dapat diperoleh darinya tanpa mengakses tumpukan atau memori, yang membantu meningkatkan kecepatan pengoperasian. Namun, jika jumlah register pada mesin virtual melebihi jumlah CPU sebenarnya, maka sejumlah besar waktu prosesor akan dihabiskan untuk mensimulasikan register dengan memori konvensional saat mengimplementasikan mesin virtual, yang justru akan mengurangi efisiensi mesin virtual. . Untuk ini, JVM hanya menyetel 4 register yang paling umum digunakan. Mereka adalah:
(1) Penghitung program PC
(2) penunjuk atas tumpukan operan optop
(3) membingkai penunjuk lingkungan eksekusi saat ini
(4) vars menunjuk ke pointer ke variabel lokal pertama di lingkungan eksekusi saat ini
Semua register adalah 32 bit. pc digunakan untuk mencatat eksekusi program. optop, frame dan vars digunakan untuk merekam pointer ke area tumpukan Java.
Di atas adalah pengenalan sistem instruksi JVM Java. Artikel ini terutama berfokus pada poin pengetahuan teoretis. Setelah mempelajarinya, Anda dapat menyimpan dokumen untuk memfasilitasi tinjauan pengetahuan di masa mendatang.