Bước tới nội dung

Khác biệt giữa bản sửa đổi của “Bytecode Java”

Bách khoa toàn thư mở Wikipedia
Nội dung được xóa Nội dung được thêm vào
n Knoweverythingwiki đã đổi Mã byte Java thành Bytecode Java: Cho đồng bộ với bài Bytecode
Không có tóm lược sửa đổi
 
Dòng 3: Dòng 3:
Do bản chất của bytecode, [[Chương trình máy tính|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.
Do bản chất của bytecode, [[Chương trình máy tính|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.


Mã bytecode Java được sử dụng khi [[Thực thi (điện toán)|chạy]], được JVM [[Trình thông dịch|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 compilation|just-in-time]] (JIT) và chạy như một ứng dụng gốc.
Bytecode Java được sử dụng khi [[Thực thi (điện toán)|chạy]], được JVM [[Trình thông dịch|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 compilation|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 máy tính|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 máy tính|phần cứng]] và [[phần mềm]] khác nhau.<ref>{{Cite journal |last=Arnold |first=Ken |year=1996 |title=The Java Programming Language |journal=Sun Microsystems |volume=1 |issue=1 |pages=30–40}}</ref>
Vì bytecode Java được thiết kế để tương thích và bảo mật trên nhiều [[Nền tảng máy tính|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 máy tính|phần cứng]] và [[phần mềm]] khác nhau.<ref>{{Cite journal |last=Arnold |first=Ken |year=1996 |title=The Java Programming Language |journal=Sun Microsystems |volume=1 |issue=1 |pages=30–40}}</ref>


== Liên quan đến Java ==
== Liên quan đến Java ==
Một lập trình viên [[Java (ngôn ngữ lập trình)|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 tạp chí [[IBM]] developerWorks, "Hiểu mã byte và mã byte được sinh ra bởi [[trình biên dịch Java]] 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 (ngôn ngữ lập trình)|C]] hay [[C++]]."<ref>[http://www.ibm.com/developerworks/ibm/library/it-haggar_bytecode/ Understanding bytecode makes you a better programmer]</ref>
Một lập trình viên [[Java (ngôn ngữ lập trình)|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 (ngôn ngữ lập trình)|C]] hay [[C++]]."<ref>[http://www.ibm.com/developerworks/ibm/library/it-haggar_bytecode/ Understanding bytecode makes you a better programmer]</ref>


== Kiến trúc tập lệnh ==
== Kiến trúc tập lệnh ==

Bản mới nhất lúc 11:22, ngày 4 tháng 8 năm 2025

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

[sửa | sửa mã nguồn]

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

[sửa | sửa mã nguồn]

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]

  • Máy ảo Java

Tham khảo

[sửa | sửa mã nguồn]
  1. ↑ "Java Virtual Machine Specification". Oracle. Truy cập ngày 14 tháng 11 năm 2023.
  2. ↑ Lindholm, Tim (2015). The Java Virtual Machine Specification. Oracle. ISBN 978-0133905908.
  3. ↑ Arnold, Ken (1996). "The Java Programming Language". Sun Microsystems. 1 (1): 30–40.
  4. ↑ Understanding bytecode makes you a better programmer
  5. ↑ 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

[sửa | sửa mã nguồn]