Open main menu
Home
Random
Recent changes
Special pages
Community portal
Preferences
About Wikipedia
Disclaimers
Incubator escapee wiki
Search
User menu
Talk
Dark mode
Contributions
Create account
Log in
Editing
Java virtual machine
(section)
Warning:
You are not logged in. Your IP address will be publicly visible if you make any edits. If you
log in
or
create an account
, your edits will be attributed to your username, along with other benefits.
Anti-spam check. Do
not
fill this in!
===Bytecode instructions=== {{Main|Java bytecode}} The JVM has [[instruction (computer science)|instructions]] for the following groups of tasks: {{flatlist| * [[Load/store architecture|Load and store]] * [[Arithmetic]] * [[Type conversion]] * [[dynamic memory allocation|Object creation and manipulation]] * [[stack (abstract data type)|Operand stack management (push / pop)]] * [[branch (computer science)|Control transfer (branching)]] * [[subroutine|Method invocation and return]] * [[exception handling|Throwing exceptions]] * [[monitor (synchronization)|Monitor-based concurrency]] }} The aim is binary compatibility. Each particular host [[operating system]] needs its own implementation of the JVM and runtime. These JVMs interpret the bytecode semantically the same way, but the actual implementation may be different. More complex than just emulating bytecode is compatibly and efficiently implementing the [[Java Class Library|Java core API]] that must be mapped to each host operating system. These instructions operate on a set of common {{vanchor|abstracted [[data type]]s|DATA_TYPE}} rather the [[native data type]]s of any specific [[instruction set architecture]].
Edit summary
(Briefly describe your changes)
By publishing changes, you agree to the
Terms of Use
, and you irrevocably agree to release your contribution under the
CC BY-SA 4.0 License
and the
GFDL
. You agree that a hyperlink or URL is sufficient attribution under the Creative Commons license.
Cancel
Editing help
(opens in new window)