{"id":22076002,"url":"https://github.com/sevdanurgenc/converttobytecode","last_synced_at":"2025-10-13T14:40:35.909Z","repository":{"id":160098398,"uuid":"270684241","full_name":"SevdanurGENC/ConvertToByteCode","owner":"SevdanurGENC","description":"Compile to java bytecode with using Javassist.","archived":false,"fork":false,"pushed_at":"2020-07-13T08:38:55.000Z","size":3014,"stargazers_count":2,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"master","last_synced_at":"2025-03-23T20:13:42.930Z","etag":null,"topics":["bytecode","bytecode-compiler","java","javaassist","opcode"],"latest_commit_sha":null,"homepage":"","language":"Java","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/SevdanurGENC.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2020-06-08T13:44:11.000Z","updated_at":"2023-09-15T22:54:55.000Z","dependencies_parsed_at":"2023-05-03T12:23:39.602Z","dependency_job_id":null,"html_url":"https://github.com/SevdanurGENC/ConvertToByteCode","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"purl":"pkg:github/SevdanurGENC/ConvertToByteCode","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SevdanurGENC%2FConvertToByteCode","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SevdanurGENC%2FConvertToByteCode/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SevdanurGENC%2FConvertToByteCode/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SevdanurGENC%2FConvertToByteCode/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/SevdanurGENC","download_url":"https://codeload.github.com/SevdanurGENC/ConvertToByteCode/tar.gz/refs/heads/master","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/SevdanurGENC%2FConvertToByteCode/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":279015773,"owners_count":26085748,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","status":"online","status_checked_at":"2025-10-13T02:00:06.723Z","response_time":61,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["bytecode","bytecode-compiler","java","javaassist","opcode"],"created_at":"2024-11-30T22:11:51.729Z","updated_at":"2025-10-13T14:40:35.876Z","avatar_url":"https://github.com/SevdanurGENC.png","language":"Java","funding_links":[],"categories":[],"sub_categories":[],"readme":"# ConvertToByteCode\nCompile to java bytecode with using Javassist.\n\nThis is the study titled \"Analysis of A Java Program Using Bytecode - Analysis of a Java Program on Bytecode\" that I have presented in the Süleyman Demirel University Faculty of Engineering - Computer Engineering Department 2019 - 2020 Spring Semester Graduate Seminar Presentation Program. 13/07/2020 #bytecode #javassist #java\n\nClick for the youtube link of the presentation : https://www.youtube.com/watch?v=E4qJer8XTEM\n\n[![Watch the video](https://i9.ytimg.com/vi/E4qJer8XTEM/mq2.jpg?sqp=CNy0sPgF\u0026rs=AOn4CLA6o1uEIUwy3FEMiseXxP_qr7QYtA)](https://www.youtube.com/watch?v=E4qJer8XTEM)\n\n\n## License\n[MIT](https://choosealicense.com/licenses/mit/)\n\n\n\n\u003ch2\u003e\u003cspan class=\"mw-headline\" id=\"The_Java_bytecodes\"\u003eTable of The Java bytecodes\u003c/span\u003e\u003c/h2\u003e\n\u003cp\u003eThe manipulation of the operand stack is notated as [before]→[after], where [before] is the stack before the instruction is executed and [after] is the stack after the instruction is executed. A stack with the element 'b' on the top and element 'a' just after the top element is denoted 'a,b'.\n\u003c/p\u003e\n\u003ctable class=\"wikitable\"\u003e\n\u003ctbody\u003e\u003ctr\u003e\n\u003cth\u003eMnemonic\u003c/th\u003e\n\u003cth\u003eOpcode\u003cbr /\u003e\u003ci\u003e(in \u003ca href=\"/w/index.php?title=Hexadecimal\u0026amp;action=edit\u0026amp;redlink=1\" class=\"new\" title=\"Hexadecimal (does not exist)\"\u003ehex\u003c/a\u003e)\u003c/i\u003e\u003c/th\u003e\n\u003cth\u003eOther bytes\u003c/th\u003e\n\u003cth\u003eStack\u003cbr /\u003e[before]→[after]\u003c/th\u003e\n\u003cth\u003eDescription\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eA\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eaaload\u003c/td\u003e\n\u003ctd align=\"center\"\u003e32\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index → value\u003c/td\u003e\n\u003ctd\u003eloads onto the stack a reference from an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eaastore\u003c/td\u003e\n\u003ctd align=\"center\"\u003e53\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index, value →\u003c/td\u003e\n\u003ctd\u003estores a reference into an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eaconst_null\u003c/td\u003e\n\u003ctd align=\"center\"\u003e01\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ null\u003c/td\u003e\n\u003ctd\u003epushes a \u003ci\u003enull\u003c/i\u003e reference onto the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eaload\u003c/td\u003e\n\u003ctd align=\"center\"\u003e19\u003c/td\u003e\n\u003ctd\u003eindex\u003c/td\u003e\n\u003ctd\u003e→ objectref\u003c/td\u003e\n\u003ctd\u003eloads a reference onto the stack from a local variable \u003ci\u003e#index\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eaload_0\u003c/td\u003e\n\u003ctd align=\"center\"\u003e2a\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ objectref\u003c/td\u003e\n\u003ctd\u003eloads a reference onto the stack from local variable 0\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eaload_1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e2b\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ objectref\u003c/td\u003e\n\u003ctd\u003eloads a reference onto the stack from local variable 1\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eaload_2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e2c\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ objectref\u003c/td\u003e\n\u003ctd\u003eloads a reference onto the stack from local variable 2\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eaload_3\u003c/td\u003e\n\u003ctd align=\"center\"\u003e2d\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ objectref\u003c/td\u003e\n\u003ctd\u003eloads a reference onto the stack from local variable 3\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eanewarray\u003c/td\u003e\n\u003ctd align=\"center\"\u003ebd\u003c/td\u003e\n\u003ctd\u003eindexbyte1, indexbyte2\u003c/td\u003e\n\u003ctd\u003ecount → arrayref\u003c/td\u003e\n\u003ctd\u003ecreates a new array of references of length \u003ci\u003ecount\u003c/i\u003e and component type identified by the class reference \u003ci\u003eindex\u003c/i\u003e (\u003ci\u003eindexbyte1 \u0026lt;\u0026lt; 8 + indexbyte2\u003c/i\u003e) in the constant pool\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eareturn\u003c/td\u003e\n\u003ctd align=\"center\"\u003eb0\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003eobjectref → [empty]\u003c/td\u003e\n\u003ctd\u003ereturns a reference from a method\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003earraylength\u003c/td\u003e\n\u003ctd align=\"center\"\u003ebe\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref → length\u003c/td\u003e\n\u003ctd\u003egets the length of an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eastore\u003c/td\u003e\n\u003ctd align=\"center\"\u003e3a\u003c/td\u003e\n\u003ctd\u003eindex\u003c/td\u003e\n\u003ctd\u003eobjectref →\u003c/td\u003e\n\u003ctd\u003estores a reference into a local variable \u003ci\u003e#index\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eastore_0\u003c/td\u003e\n\u003ctd align=\"center\"\u003e4b\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003eobjectref →\u003c/td\u003e\n\u003ctd\u003estores a reference into local variable 0\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eastore_1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e4c\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003eobjectref →\u003c/td\u003e\n\u003ctd\u003estores a reference into local variable 1\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eastore_2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e4d\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003eobjectref →\u003c/td\u003e\n\u003ctd\u003estores a reference into local variable 2\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eastore_3\u003c/td\u003e\n\u003ctd align=\"center\"\u003e4e\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003eobjectref →\u003c/td\u003e\n\u003ctd\u003estores a reference into local variable 3\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eathrow\u003c/td\u003e\n\u003ctd align=\"center\"\u003ebf\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003eobjectref → [empty], objectref\u003c/td\u003e\n\u003ctd\u003ethrows an error or exception (notice that the rest of the stack is cleared, leaving only a reference to the Throwable)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eB\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ebaload\u003c/td\u003e\n\u003ctd align=\"center\"\u003e33\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index → value\u003c/td\u003e\n\u003ctd\u003eloads a byte or Boolean value from an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ebastore\u003c/td\u003e\n\u003ctd align=\"center\"\u003e54\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index, value →\u003c/td\u003e\n\u003ctd\u003estores a byte or Boolean value into an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ebipush\u003c/td\u003e\n\u003ctd align=\"center\"\u003e10\u003c/td\u003e\n\u003ctd\u003ebyte\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003epushes a \u003ci\u003ebyte\u003c/i\u003e onto the stack as an integer \u003ci\u003evalue\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eC\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecaload\u003c/td\u003e\n\u003ctd align=\"center\"\u003e34\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index → value\u003c/td\u003e\n\u003ctd\u003eloads a char from an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ecastore\u003c/td\u003e\n\u003ctd align=\"center\"\u003e55\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index, value →\u003c/td\u003e\n\u003ctd\u003estores a char into an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003echeckcast\u003c/td\u003e\n\u003ctd align=\"center\"\u003ec0\u003c/td\u003e\n\u003ctd\u003eindexbyte1, indexbyte2\u003c/td\u003e\n\u003ctd\u003eobjectref → objectref\u003c/td\u003e\n\u003ctd\u003echecks whether an \u003ci\u003eobjectref\u003c/i\u003e is of a certain type, the class reference of which is in the constant pool at \u003ci\u003eindex\u003c/i\u003e (\u003ci\u003eindexbyte1 \u0026lt;\u0026lt; 8 + indexbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eD\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ed2f\u003c/td\u003e\n\u003ctd align=\"center\"\u003e90\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts a double to a float\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ed2i\u003c/td\u003e\n\u003ctd align=\"center\"\u003e8e\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts a double to an int\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ed2l\u003c/td\u003e\n\u003ctd align=\"center\"\u003e8f\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts a double to a long\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edadd\u003c/td\u003e\n\u003ctd align=\"center\"\u003e63\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003eadds two doubles\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edaload\u003c/td\u003e\n\u003ctd align=\"center\"\u003e31\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index → value\u003c/td\u003e\n\u003ctd\u003eloads a double from an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edastore\u003c/td\u003e\n\u003ctd align=\"center\"\u003e52\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index, value →\u003c/td\u003e\n\u003ctd\u003estores a double into an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edcmpg\u003c/td\u003e\n\u003ctd align=\"center\"\u003e98\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003ecompares two doubles\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edcmpl\u003c/td\u003e\n\u003ctd align=\"center\"\u003e97\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003ecompares two doubles\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edconst_0\u003c/td\u003e\n\u003ctd align=\"center\"\u003e0e\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ 0.0\u003c/td\u003e\n\u003ctd\u003epushes the constant \u003ci\u003e0.0\u003c/i\u003e onto the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edconst_1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e0f\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ 1.0\u003c/td\u003e\n\u003ctd\u003epushes the constant \u003ci\u003e1.0\u003c/i\u003e onto the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eddiv\u003c/td\u003e\n\u003ctd align=\"center\"\u003e6f\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003edivides two doubles\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edload\u003c/td\u003e\n\u003ctd align=\"center\"\u003e18\u003c/td\u003e\n\u003ctd\u003eindex\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads a double \u003ci\u003evalue\u003c/i\u003e from a local variable \u003ci\u003e#index\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edload_0\u003c/td\u003e\n\u003ctd align=\"center\"\u003e26\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads a double from local variable 0\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edload_1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e27\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads a double from local variable 1\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edload_2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e28\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads a double from local variable 2\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edload_3\u003c/td\u003e\n\u003ctd align=\"center\"\u003e29\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads a double from local variable 3\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edmul\u003c/td\u003e\n\u003ctd align=\"center\"\u003e6b\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003emultiplies two doubles\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edneg\u003c/td\u003e\n\u003ctd align=\"center\"\u003e77\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003enegates a double\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edrem\u003c/td\u003e\n\u003ctd align=\"center\"\u003e73\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003egets the remainder from a division between two doubles\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edreturn\u003c/td\u003e\n\u003ctd align=\"center\"\u003eaf\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → [empty]\u003c/td\u003e\n\u003ctd\u003ereturns a double from a method\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edstore\u003c/td\u003e\n\u003ctd align=\"center\"\u003e39\u003c/td\u003e\n\u003ctd\u003eindex\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estores a double \u003ci\u003evalue\u003c/i\u003e into a local variable \u003ci\u003e#index\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edstore_0\u003c/td\u003e\n\u003ctd align=\"center\"\u003e47\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estores a double into local variable 0\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edstore_1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e48\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estores a double into local variable 1\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edstore_2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e49\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estores a double into local variable 2\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edstore_3\u003c/td\u003e\n\u003ctd align=\"center\"\u003e4a\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estores a double into local variable 3\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edsub\u003c/td\u003e\n\u003ctd align=\"center\"\u003e67\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003esubtracts a double from another\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edup\u003c/td\u003e\n\u003ctd align=\"center\"\u003e59\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → value, value\u003c/td\u003e\n\u003ctd\u003eduplicates the value on top of the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edup_x1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e5a\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue2, value1 → value1, value2, value1\u003c/td\u003e\n\u003ctd\u003einserts a copy of the top value into the stack two values from the top\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edup_x2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e5b\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue3, value2, value1 → value1, value3, value2, value1\u003c/td\u003e\n\u003ctd\u003einserts a copy of the top value into the stack two (if value2 is double or long it takes up the entry of value3, too) or three values (if value2 is neither double nor long) from the top\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edup2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e5c\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e{value2, value1} → {value2, value1}, {value2, value1}\u003c/td\u003e\n\u003ctd\u003eduplicate top two stack words (two values, if value1 is not double nor long; a single value, if value1 is double or long)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edup2_x1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e5d\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue3, {value2, value1} → {value2, value1}, value3, {value2, value1}\u003c/td\u003e\n\u003ctd\u003eduplicate two words and insert beneath third word (see explanation above)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003edup2_x2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e5e\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e{value4, value3}, {value2, value1} → {value2, value1}, {value4, value3}, {value2, value1}\u003c/td\u003e\n\u003ctd\u003eduplicate two words and insert beneath fourth word\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eF\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ef2d\u003c/td\u003e\n\u003ctd align=\"center\"\u003e8d\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts a float to a double\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ef2i\u003c/td\u003e\n\u003ctd align=\"center\"\u003e8b\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts a float to an int\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ef2l\u003c/td\u003e\n\u003ctd align=\"center\"\u003e8c\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts a float to a long\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efadd\u003c/td\u003e\n\u003ctd align=\"center\"\u003e62\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003eadds two floats\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efaload\u003c/td\u003e\n\u003ctd align=\"center\"\u003e30\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index → value\u003c/td\u003e\n\u003ctd\u003eloads a float from an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efastore\u003c/td\u003e\n\u003ctd align=\"center\"\u003e51\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earreyref, index, value →\u003c/td\u003e\n\u003ctd\u003estores a float in an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efcmpg\u003c/td\u003e\n\u003ctd align=\"center\"\u003e96\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003ecompares two floats\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efcmpl\u003c/td\u003e\n\u003ctd align=\"center\"\u003e95\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003ecompares two floats\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efconst_0\u003c/td\u003e\n\u003ctd align=\"center\"\u003e0b\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ 0.0f\u003c/td\u003e\n\u003ctd\u003epushes \u003ci\u003e0.0f\u003c/i\u003e on the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efconst_1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e0c\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ 1.0f\u003c/td\u003e\n\u003ctd\u003epushes \u003ci\u003e1.0f\u003c/i\u003e on the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efconst_2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e0d\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ 2.0f\u003c/td\u003e\n\u003ctd\u003epushes \u003ci\u003e2.0f\u003c/i\u003e on the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efdiv\u003c/td\u003e\n\u003ctd align=\"center\"\u003e6e\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003edivides two floats\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efload\u003c/td\u003e\n\u003ctd align=\"center\"\u003e17\u003c/td\u003e\n\u003ctd\u003eindex\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads a float \u003ci\u003evalue\u003c/i\u003e from a local variable \u003ci\u003e#index\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efload_0\u003c/td\u003e\n\u003ctd align=\"center\"\u003e22\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads a float \u003ci\u003evalue\u003c/i\u003e from local variable 0\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efload_1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e23\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads a float \u003ci\u003evalue\u003c/i\u003e from local variable 1\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efload_2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e24\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads a float \u003ci\u003evalue\u003c/i\u003e from local variable 2\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efload_3\u003c/td\u003e\n\u003ctd align=\"center\"\u003e25\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads a float \u003ci\u003evalue\u003c/i\u003e from local variable 3\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efmul\u003c/td\u003e\n\u003ctd align=\"center\"\u003e6a\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003emultiplies two floats\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efneg\u003c/td\u003e\n\u003ctd align=\"center\"\u003e76\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003enegates a float\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efrem\u003c/td\u003e\n\u003ctd align=\"center\"\u003e72\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003egets the remainder from a division between two floats\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efreturn\u003c/td\u003e\n\u003ctd align=\"center\"\u003eae\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → [empty]\u003c/td\u003e\n\u003ctd\u003ereturns a float from method\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efstore\u003c/td\u003e\n\u003ctd align=\"center\"\u003e38\u003c/td\u003e\n\u003ctd\u003eindex\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estores a float \u003ci\u003evalue\u003c/i\u003e into a local variable \u003ci\u003e#index\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efstore_0\u003c/td\u003e\n\u003ctd align=\"center\"\u003e43\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estores a float \u003ci\u003evalue\u003c/i\u003e into local variable 0\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efstore_1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e44\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estores a float \u003ci\u003evalue\u003c/i\u003e into local variable 1\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efstore_2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e45\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estores a float \u003ci\u003evalue\u003c/i\u003e into local variable 2\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efstore_3\u003c/td\u003e\n\u003ctd align=\"center\"\u003e46\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estores a float \u003ci\u003evalue\u003c/i\u003e into local variable 3\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003efsub\u003c/td\u003e\n\u003ctd align=\"center\"\u003e66\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003esubtracts two floats\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eG\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003egetfield\u003c/td\u003e\n\u003ctd align=\"center\"\u003eb4\u003c/td\u003e\n\u003ctd\u003eindex1, index2\u003c/td\u003e\n\u003ctd\u003eobjectref → value\u003c/td\u003e\n\u003ctd\u003egets a field \u003ci\u003evalue\u003c/i\u003e of an object \u003ci\u003eobjectref\u003c/i\u003e, where the field is identified by field reference in the constant pool \u003ci\u003eindex\u003c/i\u003e (\u003ci\u003eindex1 \u0026lt;\u0026lt; 8 + index2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003egetstatic\u003c/td\u003e\n\u003ctd align=\"center\"\u003eb2\u003c/td\u003e\n\u003ctd\u003eindex1, index2\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003egets a static field \u003ci\u003evalue\u003c/i\u003e of a class, where the field is identified by field reference in the constant pool \u003ci\u003eindex\u003c/i\u003e (\u003ci\u003eindex1 \u0026lt;\u0026lt; 8 + index2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003egoto\u003c/td\u003e\n\u003ctd align=\"center\"\u003ea7\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003e[no change]\u003c/td\u003e\n\u003ctd\u003egoes to another instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003egoto_w\u003c/td\u003e\n\u003ctd align=\"center\"\u003ec8\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2, branchbyte3, branchbyte4\u003c/td\u003e\n\u003ctd\u003e[no change]\u003c/td\u003e\n\u003ctd\u003egoes to another instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed int constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 24 + \u003c/i\u003ebranchbyte2 \u0026lt;\u0026lt; 16 + \u003ci\u003ebranchbyte3 \u0026lt;\u0026lt; 8 + branchbyte4\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eI\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ei2b\u003c/td\u003e\n\u003ctd align=\"center\"\u003e91\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts an int into a byte\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ei2c\u003c/td\u003e\n\u003ctd align=\"center\"\u003e92\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts an int into a character\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ei2d\u003c/td\u003e\n\u003ctd align=\"center\"\u003e87\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts an int into a double\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ei2f\u003c/td\u003e\n\u003ctd align=\"center\"\u003e86\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts an int into a float\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ei2l\u003c/td\u003e\n\u003ctd align=\"center\"\u003e85\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts an int into a long\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ei2s\u003c/td\u003e\n\u003ctd align=\"center\"\u003e93\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts an int into a short\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiadd\u003c/td\u003e\n\u003ctd align=\"center\"\u003e60\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003eadds two ints together\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiaload\u003c/td\u003e\n\u003ctd align=\"center\"\u003e2e\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index → value\u003c/td\u003e\n\u003ctd\u003eloads an int from an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiand\u003c/td\u003e\n\u003ctd align=\"center\"\u003e7e\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003eperforms a logical and on two integers\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiastore\u003c/td\u003e\n\u003ctd align=\"center\"\u003e4f\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index, value →\u003c/td\u003e\n\u003ctd\u003estores an int into an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiconst_m1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e02\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ -1\u003c/td\u003e\n\u003ctd\u003eloads the int value -1 onto the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiconst_0\u003c/td\u003e\n\u003ctd align=\"center\"\u003e03\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ 0\u003c/td\u003e\n\u003ctd\u003eloads the int value 0 onto the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiconst_1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e04\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ 1\u003c/td\u003e\n\u003ctd\u003eloads the int value 1 onto the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiconst_2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e05\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ 2\u003c/td\u003e\n\u003ctd\u003eloads the int value 2 onto the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiconst_3\u003c/td\u003e\n\u003ctd align=\"center\"\u003e06\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ 3\u003c/td\u003e\n\u003ctd\u003eloads the int value 3 onto the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiconst_4\u003c/td\u003e\n\u003ctd align=\"center\"\u003e07\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ 4\u003c/td\u003e\n\u003ctd\u003eloads the int value 4 onto the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiconst_5\u003c/td\u003e\n\u003ctd align=\"center\"\u003e08\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ 5\u003c/td\u003e\n\u003ctd\u003eloads the int value 5 onto the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eidiv\u003c/td\u003e\n\u003ctd align=\"center\"\u003e6c\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003edivides two integers\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eif_acmpeq\u003c/td\u003e\n\u003ctd align=\"center\"\u003ea5\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue1, value2 →\u003c/td\u003e\n\u003ctd\u003eif references are equal, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eif_acmpne\u003c/td\u003e\n\u003ctd align=\"center\"\u003ea6\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue1, value2 →\u003c/td\u003e\n\u003ctd\u003eif references are not equal, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eif_icmpeq\u003c/td\u003e\n\u003ctd align=\"center\"\u003e9f\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue1, value2 →\u003c/td\u003e\n\u003ctd\u003eif ints are equal, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eif_icmpne\u003c/td\u003e\n\u003ctd align=\"center\"\u003ea0\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue1, value2 →\u003c/td\u003e\n\u003ctd\u003eif ints are not equal, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eif_icmplt\u003c/td\u003e\n\u003ctd align=\"center\"\u003ea1\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue1, value2 →\u003c/td\u003e\n\u003ctd\u003eif \u003ci\u003evalue1\u003c/i\u003e is less than \u003ci\u003evalue2\u003c/i\u003e, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eif_icmpge\u003c/td\u003e\n\u003ctd align=\"center\"\u003ea2\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue1, value2 →\u003c/td\u003e\n\u003ctd\u003eif \u003ci\u003evalue1\u003c/i\u003e is greater than or equal to \u003ci\u003evalue2\u003c/i\u003e, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eif_icmpgt\u003c/td\u003e\n\u003ctd align=\"center\"\u003ea3\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue1, value2 →\u003c/td\u003e\n\u003ctd\u003eif \u003ci\u003evalue1\u003c/i\u003e is greater than \u003ci\u003evalue2\u003c/i\u003e, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eif_icmple\u003c/td\u003e\n\u003ctd align=\"center\"\u003ea4\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue1, value2 →\u003c/td\u003e\n\u003ctd\u003eif \u003ci\u003evalue1\u003c/i\u003e is less than or equal to \u003ci\u003evalue2\u003c/i\u003e, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eifeq\u003c/td\u003e\n\u003ctd align=\"center\"\u003e99\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003eif \u003ci\u003evalue\u003c/i\u003e is 0, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eifne\u003c/td\u003e\n\u003ctd align=\"center\"\u003e9a\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003eif \u003ci\u003evalue\u003c/i\u003e is not 0, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiflt\u003c/td\u003e\n\u003ctd align=\"center\"\u003e9b\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003eif \u003ci\u003evalue\u003c/i\u003e is less than 0, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eifge\u003c/td\u003e\n\u003ctd align=\"center\"\u003e9c\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003eif \u003ci\u003evalue\u003c/i\u003e is greater than or equal to 0, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eifgt\u003c/td\u003e\n\u003ctd align=\"center\"\u003e9d\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003eif \u003ci\u003evalue\u003c/i\u003e is greater than 0, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eifle\u003c/td\u003e\n\u003ctd align=\"center\"\u003e9e\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003eif \u003ci\u003evalue\u003c/i\u003e is less than or equal to 0, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eifnonnull\u003c/td\u003e\n\u003ctd align=\"center\"\u003ec7\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003eif \u003ci\u003evalue\u003c/i\u003e is not null, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eifnull\u003c/td\u003e\n\u003ctd align=\"center\"\u003ec6\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003eif \u003ci\u003evalue\u003c/i\u003e is null, branch to instruction at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiinc\u003c/td\u003e\n\u003ctd align=\"center\"\u003e84\u003c/td\u003e\n\u003ctd\u003eindex, const\u003c/td\u003e\n\u003ctd\u003e[No change]\u003c/td\u003e\n\u003ctd\u003eincrement local variable \u003ci\u003e#index\u003c/i\u003e by signed byte \u003ci\u003econst\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiload\u003c/td\u003e\n\u003ctd align=\"center\"\u003e15\u003c/td\u003e\n\u003ctd\u003eindex\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads an int \u003ci\u003evalue\u003c/i\u003e from a variable \u003ci\u003e#index\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiload_0\u003c/td\u003e\n\u003ctd align=\"center\"\u003e1a\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads an int \u003ci\u003evalue\u003c/i\u003e from variable 0\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiload_1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e1b\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads an int \u003ci\u003evalue\u003c/i\u003e from variable 1\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiload_2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e1c\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads an int \u003ci\u003evalue\u003c/i\u003e from variable 2\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiload_3\u003c/td\u003e\n\u003ctd align=\"center\"\u003e1d\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eloads an int \u003ci\u003evalue\u003c/i\u003e from variable 3\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eimul\u003c/td\u003e\n\u003ctd align=\"center\"\u003e68\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003emultiply two integers\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eineg\u003c/td\u003e\n\u003ctd align=\"center\"\u003e74\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003enegate int\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003einstanceof\u003c/td\u003e\n\u003ctd align=\"center\"\u003ec1\u003c/td\u003e\n\u003ctd\u003eindexbyte1, indexbyte2\u003c/td\u003e\n\u003ctd\u003eobjectref → result\u003c/td\u003e\n\u003ctd\u003edetermines if an object \u003ci\u003eobjectref\u003c/i\u003e is of a given type, identified by class reference \u003ci\u003eindex\u003c/i\u003e in constant pool (\u003ci\u003eindexbyte1 \u0026lt;\u0026lt; 8 + indexbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003einvokeinterface\u003c/td\u003e\n\u003ctd align=\"center\"\u003eb9\u003c/td\u003e\n\u003ctd\u003eindexbyte1, indexbyte2, count, 0\u003c/td\u003e\n\u003ctd\u003eobjectref, [arg1, arg2, ...] →\u003c/td\u003e\n\u003ctd\u003einvokes an interface method on object \u003ci\u003eobjectref\u003c/i\u003e, where the interface method is identified by method reference \u003ci\u003eindex\u003c/i\u003e in constant pool (\u003ci\u003eindexbyte1 \u0026lt;\u0026lt; 8 + indexbyte2\u003c/i\u003e) and \u003ci\u003ecount\u003c/i\u003e is the number of arguments to pop from the stack frame including the object on which the method is being called and must always be greater than or equal to 1\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003einvokespecial\u003c/td\u003e\n\u003ctd align=\"center\"\u003eb7\u003c/td\u003e\n\u003ctd\u003eindexbyte1, indexbyte2\u003c/td\u003e\n\u003ctd\u003eobjectref, [arg1, arg2, ...] →\u003c/td\u003e\n\u003ctd\u003einvoke instance method on object \u003ci\u003eobjectref\u003c/i\u003e requiring special handling (instance initialization method, a private method, or a superclass method), where the method is identified by method reference \u003ci\u003eindex\u003c/i\u003e in constant pool (\u003ci\u003eindexbyte1 \u0026lt;\u0026lt; 8 + indexbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003einvokestatic\u003c/td\u003e\n\u003ctd align=\"center\"\u003eb8\u003c/td\u003e\n\u003ctd\u003eindexbyte1, indexbyte2\u003c/td\u003e\n\u003ctd\u003e[arg1, arg2, ...] →\u003c/td\u003e\n\u003ctd\u003einvoke a static method, where the method is identified by method reference \u003ci\u003eindex\u003c/i\u003e in constant pool (\u003ci\u003eindexbyte1 \u0026lt;\u0026lt; 8 + indexbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003einvokevirtual\u003c/td\u003e\n\u003ctd align=\"center\"\u003eb6\u003c/td\u003e\n\u003ctd\u003eindexbyte1, indexbyte2\u003c/td\u003e\n\u003ctd\u003eobjectref, [arg1, arg2, ...] →\u003c/td\u003e\n\u003ctd\u003einvoke virtual method on object \u003ci\u003eobjectref\u003c/i\u003e, where the method is identified by method reference \u003ci\u003eindex\u003c/i\u003e in constant pool (\u003ci\u003eindexbyte1 \u0026lt;\u0026lt; 8 + indexbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eior\u003c/td\u003e\n\u003ctd align=\"center\"\u003e80\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003elogical int or\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eirem\u003c/td\u003e\n\u003ctd align=\"center\"\u003e70\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003elogical int remainder\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eireturn\u003c/td\u003e\n\u003ctd align=\"center\"\u003eac\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → [empty]\u003c/td\u003e\n\u003ctd\u003ereturns an integer from a method\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eishl\u003c/td\u003e\n\u003ctd align=\"center\"\u003e78\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003eint shift left\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eishr\u003c/td\u003e\n\u003ctd align=\"center\"\u003e7a\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003eint shift right\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eistore\u003c/td\u003e\n\u003ctd align=\"center\"\u003e36\u003c/td\u003e\n\u003ctd\u003eindex\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estore int \u003ci\u003evalue\u003c/i\u003e into variable \u003ci\u003e#index\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eistore_0\u003c/td\u003e\n\u003ctd align=\"center\"\u003e3b\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estore int \u003ci\u003evalue\u003c/i\u003e into variable 0\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eistore_1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e3c\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estore int \u003ci\u003evalue\u003c/i\u003e into variable 1\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eistore_2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e3d\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estore int \u003ci\u003evalue\u003c/i\u003e into variable 2\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eistore_3\u003c/td\u003e\n\u003ctd align=\"center\"\u003e3e\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estore int \u003ci\u003evalue\u003c/i\u003e into variable 3\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eisub\u003c/td\u003e\n\u003ctd align=\"center\"\u003e64\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003eint subtract\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eiushr\u003c/td\u003e\n\u003ctd align=\"center\"\u003e7c\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003eint shift right\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eixor\u003c/td\u003e\n\u003ctd align=\"center\"\u003e82\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003eint xor\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eJ\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ejsr\u003c/td\u003e\n\u003ctd align=\"center\"\u003ea8\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2\u003c/td\u003e\n\u003ctd\u003e→ address\u003c/td\u003e\n\u003ctd\u003ejump to subroutine at \u003ci\u003ebranchoffset\u003c/i\u003e (signed short constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 8 + branchbyte2\u003c/i\u003e) and place the return address on the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ejsr_w\u003c/td\u003e\n\u003ctd align=\"center\"\u003ec9\u003c/td\u003e\n\u003ctd\u003ebranchbyte1, branchbyte2, branchbyte3, branchbyte4\u003c/td\u003e\n\u003ctd\u003e→ address\u003c/td\u003e\n\u003ctd\u003ejump to subroutine at \u003ci\u003ebranchoffset\u003c/i\u003e (signed int constructed from unsigned bytes \u003ci\u003ebranchbyte1 \u0026lt;\u0026lt; 24 + branchbyte2 \u0026lt;\u0026lt; 16 + branchbyte3 \u0026lt;\u0026lt; 8 + branchbyte4\u003c/i\u003e) and place the return address on the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eL\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003el2d\u003c/td\u003e\n\u003ctd align=\"center\"\u003e8a\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts a long to a double\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003el2f\u003c/td\u003e\n\u003ctd align=\"center\"\u003e89\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts a long to a float\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003el2i\u003c/td\u003e\n\u003ctd align=\"center\"\u003e88\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003econverts a long to an int\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eladd\u003c/td\u003e\n\u003ctd align=\"center\"\u003e61\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003eadd two longs\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elaload\u003c/td\u003e\n\u003ctd align=\"center\"\u003e2f\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index → value\u003c/td\u003e\n\u003ctd\u003eload a long from an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eland\u003c/td\u003e\n\u003ctd align=\"center\"\u003e7f\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003ebitwise and of two longs\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elastore\u003c/td\u003e\n\u003ctd align=\"center\"\u003e50\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index, value →\u003c/td\u003e\n\u003ctd\u003estore a long to an array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elcmp\u003c/td\u003e\n\u003ctd align=\"center\"\u003e94\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003ecompares two longs values\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elconst_0\u003c/td\u003e\n\u003ctd align=\"center\"\u003e09\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ 0L\u003c/td\u003e\n\u003ctd\u003epushes the long 0 onto the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elconst_1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e0a\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ 1L\u003c/td\u003e\n\u003ctd\u003epushes the long 1 onto the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eldc\u003c/td\u003e\n\u003ctd align=\"center\"\u003e12\u003c/td\u003e\n\u003ctd\u003eindex\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003epushes a constant \u003ci\u003e#index\u003c/i\u003e from a constant pool (String, int, float or class type) onto the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eldc_w\u003c/td\u003e\n\u003ctd align=\"center\"\u003e13\u003c/td\u003e\n\u003ctd\u003eindexbyte1, indexbyte2\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003epushes a constant \u003ci\u003e#index\u003c/i\u003e from a constant pool (String, int, float or class type) onto the stack (wide \u003ci\u003eindex\u003c/i\u003e is constructed as \u003ci\u003eindexbyte1 \u0026lt;\u0026lt; 8 + indexbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eldc2_w\u003c/td\u003e\n\u003ctd align=\"center\"\u003e14\u003c/td\u003e\n\u003ctd\u003eindexbyte1, indexbyte2\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003epushes a constant \u003ci\u003e#index\u003c/i\u003e from a constant pool (double or long) onto the stack (wide \u003ci\u003eindex\u003c/i\u003e is constructed as \u003ci\u003eindexbyte1 \u0026lt;\u0026lt; 8 + indexbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eldiv\u003c/td\u003e\n\u003ctd align=\"center\"\u003e6d\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003edivide two longs\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elload\u003c/td\u003e\n\u003ctd align=\"center\"\u003e16\u003c/td\u003e\n\u003ctd\u003eindex\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eload a long value from a local variable \u003ci\u003e#index\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elload_0\u003c/td\u003e\n\u003ctd align=\"center\"\u003e1e\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eload a long value from a local variable 0\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elload_1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e1f\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eload a long value from a local variable 1\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elload_2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e20\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eload a long value from a local variable 2\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elload_3\u003c/td\u003e\n\u003ctd align=\"center\"\u003e21\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003eload a long value from a local variable 3\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elmul\u003c/td\u003e\n\u003ctd align=\"center\"\u003e69\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003emultiplies two longs\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elneg\u003c/td\u003e\n\u003ctd align=\"center\"\u003e75\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → result\u003c/td\u003e\n\u003ctd\u003enegates a long\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elookupswitch\u003c/td\u003e\n\u003ctd align=\"center\"\u003eab\u003c/td\u003e\n\u003ctd\u003e\u0026lt;0-3 bytes padding\u0026gt;, defaultbyte1, defaultbyte2, defaultbyte3, defaultbyte4, npairs1, npairs2, npairs3, npairs4, match-offset pairs...\u003c/td\u003e\n\u003ctd\u003ekey →\u003c/td\u003e\n\u003ctd\u003ea target address is looked up from a table using a key and execution continues from the instruction at that address\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elor\u003c/td\u003e\n\u003ctd align=\"center\"\u003e81\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003ebitwise or of two longs\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elrem\u003c/td\u003e\n\u003ctd align=\"center\"\u003e71\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003eremainder of division of two longs\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elreturn\u003c/td\u003e\n\u003ctd align=\"center\"\u003ead\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue → [empty]\u003c/td\u003e\n\u003ctd\u003ereturns a long value\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elshl\u003c/td\u003e\n\u003ctd align=\"center\"\u003e79\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003ebitwise shift left of a long \u003ci\u003evalue1\u003c/i\u003e by \u003ci\u003evalue2\u003c/i\u003e positions\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elshr\u003c/td\u003e\n\u003ctd align=\"center\"\u003e7b\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003ebitwise shift right of a long \u003ci\u003evalue1\u003c/i\u003e by \u003ci\u003evalue2\u003c/i\u003e positions\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elstore\u003c/td\u003e\n\u003ctd align=\"center\"\u003e37\u003c/td\u003e\n\u003ctd\u003eindex\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estore a long \u003ci\u003evalue\u003c/i\u003e in a local variable \u003ci\u003e#index\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elstore_0\u003c/td\u003e\n\u003ctd align=\"center\"\u003e3f\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estore a long \u003ci\u003evalue\u003c/i\u003e in a local variable 0\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elstore_1\u003c/td\u003e\n\u003ctd align=\"center\"\u003e40\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estore a long \u003ci\u003evalue\u003c/i\u003e in a local variable 1\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elstore_2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e41\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estore a long \u003ci\u003evalue\u003c/i\u003e in a local variable 2\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elstore_3\u003c/td\u003e\n\u003ctd align=\"center\"\u003e42\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003estore a long \u003ci\u003evalue\u003c/i\u003e in a local variable 3\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elsub\u003c/td\u003e\n\u003ctd align=\"center\"\u003e65\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003esubtract two longs\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elushr\u003c/td\u003e\n\u003ctd align=\"center\"\u003e7d\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003ebitwise shift right of a long \u003ci\u003evalue1\u003c/i\u003e by \u003ci\u003evalue2\u003c/i\u003e positions, unsigned\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003elxor\u003c/td\u003e\n\u003ctd align=\"center\"\u003e83\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue1, value2 → result\u003c/td\u003e\n\u003ctd\u003ebitwise exclusive or of two longs\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eM\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003emonitorenter\u003c/td\u003e\n\u003ctd align=\"center\"\u003ec2\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003eobjectref →\u003c/td\u003e\n\u003ctd\u003eenter monitor for object (\"grab the lock\" - start of synchronized() section)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003emonitorexit\u003c/td\u003e\n\u003ctd align=\"center\"\u003ec3\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003eobjectref →\u003c/td\u003e\n\u003ctd\u003eexit monitor for object (\"release the lock\" - end of synchronized() section)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003emultianewarray\u003c/td\u003e\n\u003ctd align=\"center\"\u003ec5\u003c/td\u003e\n\u003ctd\u003eindexbyte1, indexbyte2, dimensions\u003c/td\u003e\n\u003ctd\u003ecount1, [count2,...] → arrayref\u003c/td\u003e\n\u003ctd\u003ecreate a new array of \u003ci\u003edimensions\u003c/i\u003e dimensions with elements of type identified by class reference in constant pool \u003ci\u003eindex\u003c/i\u003e (\u003ci\u003eindexbyte1 \u0026lt;\u0026lt; 8 + indexbyte2\u003c/i\u003e); the sizes of each dimension is identified by \u003ci\u003ecount1\u003c/i\u003e, [\u003ci\u003ecount2\u003c/i\u003e, etc]\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eN\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003enew\u003c/td\u003e\n\u003ctd align=\"center\"\u003ebb\u003c/td\u003e\n\u003ctd\u003eindexbyte1, indexbyte2\u003c/td\u003e\n\u003ctd\u003e→ objectref\u003c/td\u003e\n\u003ctd\u003ecreates new object of type identified by class reference in constant pool \u003ci\u003eindex\u003c/i\u003e (\u003ci\u003eindexbyte1 \u0026lt;\u0026lt; 8 + indexbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003enewarray\u003c/td\u003e\n\u003ctd align=\"center\"\u003ebc\u003c/td\u003e\n\u003ctd\u003eatype\u003c/td\u003e\n\u003ctd\u003ecount → arrayref\u003c/td\u003e\n\u003ctd\u003ecreates new array with \u003ci\u003ecount\u003c/i\u003e elements of primitive type identified by \u003ci\u003eatype\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ca href=\"/w/index.php?title=Nop\u0026amp;action=edit\u0026amp;redlink=1\" class=\"new\" title=\"Nop (does not exist)\"\u003enop\u003c/a\u003e\u003c/td\u003e\n\u003ctd align=\"center\"\u003e00\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e[No change]\u003c/td\u003e\n\u003ctd\u003eperforms no operation\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eP\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003epop\u003c/td\u003e\n\u003ctd align=\"center\"\u003e57\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003ediscards the top value on the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003epop2\u003c/td\u003e\n\u003ctd align=\"center\"\u003e58\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e{value2, value1} →\u003c/td\u003e\n\u003ctd\u003ediscards the top two values on the stack (or one value, if it is a double or long)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eputfield\u003c/td\u003e\n\u003ctd align=\"center\"\u003eb5\u003c/td\u003e\n\u003ctd\u003eindexbyte1, indexbyte2\u003c/td\u003e\n\u003ctd\u003eobjectref, value →\u003c/td\u003e\n\u003ctd\u003eset field to \u003ci\u003evalue\u003c/i\u003e in an object \u003ci\u003eobjectref\u003c/i\u003e, where the field is identified by a field reference \u003ci\u003eindex\u003c/i\u003e in constant pool (\u003ci\u003eindexbyte1 \u0026lt;\u0026lt; 8 + indexbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eputstatic\u003c/td\u003e\n\u003ctd align=\"center\"\u003eb3\u003c/td\u003e\n\u003ctd\u003eindexbyte1, indexbyte2\u003c/td\u003e\n\u003ctd\u003evalue →\u003c/td\u003e\n\u003ctd\u003eset static field to \u003ci\u003evalue\u003c/i\u003e in a class, where the field is identified by a field reference \u003ci\u003eindex\u003c/i\u003e in constant pool (\u003ci\u003eindexbyte1 \u0026lt;\u0026lt; 8 + indexbyte2\u003c/i\u003e)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eR\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eret\u003c/td\u003e\n\u003ctd align=\"center\"\u003ea9\u003c/td\u003e\n\u003ctd\u003eindex\u003c/td\u003e\n\u003ctd\u003e[No change]\u003c/td\u003e\n\u003ctd\u003econtinue execution from address taken from a local variable \u003ci\u003e#index\u003c/i\u003e (the asymmetry with jsr is intentional)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ereturn\u003c/td\u003e\n\u003ctd align=\"center\"\u003eb1\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e→ [empty]\u003c/td\u003e\n\u003ctd\u003ereturn void from method\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eS\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003esaload\u003c/td\u003e\n\u003ctd align=\"center\"\u003e35\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index → value\u003c/td\u003e\n\u003ctd\u003eload short from array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003esastore\u003c/td\u003e\n\u003ctd align=\"center\"\u003e56\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003earrayref, index, value →\u003c/td\u003e\n\u003ctd\u003estore short to array\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003esipush\u003c/td\u003e\n\u003ctd align=\"center\"\u003e11\u003c/td\u003e\n\u003ctd\u003ebyte1, byte2\u003c/td\u003e\n\u003ctd\u003e→ value\u003c/td\u003e\n\u003ctd\u003epushes a signed integer (\u003ci\u003ebyte1 \u0026lt;\u0026lt; 8 + byte2\u003c/i\u003e) onto the stack\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eswap\u003c/td\u003e\n\u003ctd align=\"center\"\u003e5f\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003evalue2, value1 → value1, value2\u003c/td\u003e\n\u003ctd\u003eswaps two top words on the stack (note that value1 and value2 must not be double or long)\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eT\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003etableswitch\u003c/td\u003e\n\u003ctd align=\"center\"\u003eaa\u003c/td\u003e\n\u003ctd\u003e[0-3 bytes padding], defaultbyte1, defaultbyte2, defaultbyte3, defaultbyte4, lowbyte1, lowbyte2, lowbyte3, lowbyte4, highbyte1, highbyte2, highbyte3, highbyte4, jump offsets...\u003c/td\u003e\n\u003ctd\u003eindex →\u003c/td\u003e\n\u003ctd\u003econtinue execution from an address in the table at offset \u003ci\u003eindex\u003c/i\u003e\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eW\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ewide\u003c/td\u003e\n\u003ctd align=\"center\"\u003ec4\u003c/td\u003e\n\u003ctd\u003eopcode, indexbyte1, indexbyte2 \u003cbr /\u003eor\u003cbr /\u003e iinc, indexbyte1, indexbyte2, countbyte1, countbyte2\u003c/td\u003e\n\u003ctd\u003e[same as for corresponding instructions]\u003c/td\u003e\n\u003ctd\u003eexecute \u003ci\u003eopcode\u003c/i\u003e, where \u003ci\u003eopcode\u003c/i\u003e is either iload, fload, aload, lload, dload, istore, fstore, astore, lstore, dstore, or ret, but assume the \u003ci\u003eindex\u003c/i\u003e is 16 bit; or execute iinc, where the \u003ci\u003eindex\u003c/i\u003e is 16 bits and the constant to increment by is a signed 16 bit short\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003cth colspan=\"5\"\u003eUnused\n\u003c/th\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003ebreakpoint\u003c/td\u003e\n\u003ctd align=\"center\"\u003eca\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003ereserved for breakpoints in Java debuggers; should not appear in any class file\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eimpdep1\u003c/td\u003e\n\u003ctd align=\"center\"\u003efe\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003ereserved for implementation-dependent operations within debuggers; should not appear in any class file\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003eimpdep2\u003c/td\u003e\n\u003ctd align=\"center\"\u003eff\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003ereserved for implementation-dependent operations within debuggers; should not appear in any class file\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003e\u003ci\u003e(no name)\u003c/i\u003e\u003c/td\u003e\n\u003ctd align=\"center\"\u003ecb-fd\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003ethese values are currently unassigned for opcodes and are reserved for future use\n\u003c/td\u003e\u003c/tr\u003e\n\u003ctr\u003e\n\u003ctd\u003exxxunusedxxx\u003c/td\u003e\n\u003ctd align=\"center\"\u003eba\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003e\u003c/td\u003e\n\u003ctd\u003ethis opcode is reserved \"for historical reasons\"\n\u003c/td\u003e\u003c/tr\u003e\u003c/tbody\u003e\u003c/table\u003e\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsevdanurgenc%2Fconverttobytecode","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsevdanurgenc%2Fconverttobytecode","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsevdanurgenc%2Fconverttobytecode/lists"}