Bytecode Java là tập lệnh của máy ảo Java (JVM), thứ mà Java và các mã nguồn tương thích với JVM khác được biên dịch.[1] Mỗi lệnh được biểu diễn bằng một byte đơn, do đó có tên là bytecode, khiến đây trở thành một dạng dữ liệu nhỏ gọn.[2]
Do bản chất của bytecode, chương trình bytecode Java có thể chạy trên bất kỳ máy nào có JVM tương thích mà không cần phải trải qua quá trình biên dịch dài dòng từ mã nguồn.
Bytecode Java được sử dụng khi chạy, được JVM thông dịch hoặc biên dịch thành ngôn ngữ máy thông qua biên dịch just-in-time (JIT) và chạy như một ứng dụng gốc.
Vì bytecode Java được thiết kế để tương thích và bảo mật trên nhiều nền tảng nên ứng dụng bytecode Java có xu hướng chạy nhất quán trên nhiều cấu hình phần cứng và phần mềm khác nhau.[3]
Liên quan đến Java
Một lập trình viên Java hoàn toàn không cần phải biết hoặc hiểu bytecode Java. Tuy nhiên, như đề xuất trên IBM developerWorks, "Hiểu bytecode cùng việc trình biên dịch Java có thể tạo ra bytecode như nào có thể giúp cho lập trình viên Java theo cách tương tự như hợp ngữ giúp cho lập trình viên C hay C++."[4]
Kiến trúc tập lệnh
JVM dựa theo kiến trúc của cả máy xếp (stack machine) và máy thanh ghi (register machine).[5]
Xem thêm
Tham khảo
- ^ "Java Virtual Machine Specification". Oracle. Truy cập ngày 14 tháng 11 năm 2023.
- ^ Lindholm, Tim (2015). The Java Virtual Machine Specification. Oracle. ISBN 978-0133905908.
- ^ Arnold, Ken (1996). "The Java Programming Language". Sun Microsystems. 1 (1): 30–40.
- ^ Understanding bytecode makes you a better programmer
- ^ Lindholm, Tim; Yellin, Frank; Bracha, Gilad; Buckley, Alex (ngày 13 tháng 2 năm 2015). The Java Virtual Machine Specification .
Liên kết ngoài

- Oracle's Java Virtual Machine Specification
- Programming Languages for the Java Virtual Machine
- Bytecode Visualizer – bytecode viewer and debugger (free Eclipse plugin)
- AdaptJ StackTrace – bytecode level debugging with a full control of the stack, the local variables, and the execution flow Lưu trữ ngày 9 tháng 8 năm 2009 tại Wayback Machine
- Java Class Unpacker – plugin for Total Commander, it lets open class files as compressed archives and see fields and methods as files. The bytecode can be viewed as text using F3