fbpx
维基百科

Jasmin

Jasmin 是一自由軟體的 JAVA 組合語言 ,可用於設計 class(類別)檔如同以JAVA 語言設計的相同與運用,但更可以得以深入了解 JAVA 語言與 PC 之間的運作模式與方法。Jasmin 程式的編譯與設計,仍是以易讀性為考量來設計,其適合熟悉 JAVA 語言與略懂 C/C++ 語法的程式設計師,如同 assembler-like 語法以 Java Virtual Machine (JVM) 架構與程序設計書為核心;但是 Jasmin 仍不同於 Java 程式語言的編譯 (Compiler Programing) 方式,而是以類似 C++ compiler 的方式來組譯 (assembler) 與連結(linker)。

Jasmin
開發者Jonathan Meyer, Troy Downing and Daniel Reynaud
操作系统JVM
类型Computer Programming
许可协议GNU General Public License
网站Sourceforge.Net

Jasmin 的編寫以類似 assembler-like 語法,其語言設計簡潔與易讀,編譯完成後會被轉成為一中間碼 (bytecode) 的 JVM Class 檔,可用於 Java 即時系統 (Java runtime system).

編譯完成後會形成二種接進低階檔案格式即 Java classes (Class) 檔與 Java Archive (JAR) 檔為主,軟體主要網址為 tinapoc (页面存档备份,存于互联网档案馆

Jasmin 範例 编辑

傳統以 HelloWorld 程式來開場:


.class public HelloWorld .super java/lang/Object .method public static main([Ljava/lang/String;)V .limit stack 2 .limit locals 1 getstatic java/lang/System/out Ljava/io/PrintStream; ldc "Hello World." invokevirtual java/io/PrintStream/println(Ljava/lang/String;)V return .end method 

編譯方式 编辑

相關編譯使用方法如下:

 java -jar jasmin.jar examples\HelloWorld.j [Windows] 或 java -jar jasmin.jar examples/HelloWorld.j [Unix/Mac OS X] 

歷史 编辑

Jon Meyer 與 Troy Downing 兩位為開發 Jasmin 程式的主要人物,他們並共同出版了名為 "JAVA 虚擬機器"(台灣歐萊禮 ISBN 957-8247-50-8)的書籍 "Java Virtual Machine" (Oreilly ISBN 1-56592-194-1)。註1

由 Jon Meyer 開發的版本僅到 1.1 版 (Oct. 21, 2004),而隨後由業餘人士接手開發與維護,而在 Daniel Reynaud 維護版本至 2.0 (Dec. 2, 2005) 時產生一延伸計劃 JasminXT [1] (页面存档备份,存于互联网档案馆) ,即前述的 Tinapoc 但開發版僅至 0.4 alpha版本而已,整體說明文件仍是連結於 Jasmin 網頁可以參考 JasminXT [2] (页面存档备份,存于互联网档案馆),而在 sourceforge 的 Tinapoc 開發網頁上則是無任何文件留存,僅二行文字說明 "Tinapoc Is Not Another Pun On Coffee" 與 "(and there is no J in it !)" 而已。目前有另一延伸計劃 SPOOFAX-JASMIN [3](页面存档备份,存于互联网档案馆),是一延伸 JasminXT 計劃,而維護轉放到 Github [4](页面存档备份,存于互联网档案馆)。

Jasmin 目前提供了 164 個指令,內容包涵了相同於程式語言的類別、例外、運算子、資料處理、數學處理與執行緒等。程 式本身的編輯可使用一般 的文字處理軟體來編寫(如:記事本,UltraEdit 或高階的程式編寫用的 IDE 介面軟體亦可)。編寫完成後的檔案必需命名以 ".j" 為結尾才可以作為組譯時使用,以運作於 Java 的虛擬機器內。

Jasmin 目前仍是定訂為 SourceForge 組織內部的 Open Source project. Project 維護最新維護時間 Apr. 29, 2013 但軟體檔案維護仍是 2.4 版 (May 7, 2010)。

註1:目前該書中文繁體版本已絕版,但目前仍有些二手書於市面交易。

参考 编辑

書籍 编辑

外部連結 编辑

jasmin, 此條目翻譯品質不佳, 2019年1月9日, 翻譯者可能不熟悉中文或原文語言, 也可能使用了機器翻譯, 請協助翻譯本條目或重新編寫, 并注意避免翻译腔的问题, 明顯拙劣的翻譯請改掛, href, template, html, class, redirect, title, template, href, wikipedia, html, class, redirect, title, wikipedia, 提交刪除, 此條目没有列出任何参考或来源, 2019年1月9日, 維基百科所有的內容都應該可供. 此條目翻譯品質不佳 2019年1月9日 翻譯者可能不熟悉中文或原文語言 也可能使用了機器翻譯 請協助翻譯本條目或重新編寫 并注意避免翻译腔的问题 明顯拙劣的翻譯請改掛 a href Template D html class mw redirect title Template D d a a href Wikipedia CSD html G13 class mw redirect title Wikipedia CSD G13 a 提交刪除 此條目没有列出任何参考或来源 2019年1月9日 維基百科所有的內容都應該可供查證 请协助補充可靠来源以改善这篇条目 无法查证的內容可能會因為異議提出而被移除 Jasmin 是一自由軟體的 JAVA 組合語言 可用於設計 class 類別 檔如同以JAVA 語言設計的相同與運用 但更可以得以深入了解 JAVA 語言與 PC 之間的運作模式與方法 Jasmin 程式的編譯與設計 仍是以易讀性為考量來設計 其適合熟悉 JAVA 語言與略懂 C C 語法的程式設計師 如同 assembler like 語法以 Java Virtual Machine JVM 架構與程序設計書為核心 但是 Jasmin 仍不同於 Java 程式語言的編譯 Compiler Programing 方式 而是以類似 C compiler 的方式來組譯 assembler 與連結 linker Jasmin開發者Jonathan Meyer Troy Downing and Daniel Reynaud操作系统JVM类型Computer Programming许可协议GNU General Public License网站Sourceforge NetJasmin 的編寫以類似 assembler like 語法 其語言設計簡潔與易讀 編譯完成後會被轉成為一中間碼 bytecode 的 JVM Class 檔 可用於 Java 即時系統 Java runtime system 編譯完成後會形成二種接進低階檔案格式即 Java classes Class 檔與 Java Archive JAR 檔為主 軟體主要網址為 tinapoc 页面存档备份 存于互联网档案馆 目录 1 Jasmin 範例 2 編譯方式 3 歷史 4 参考 5 書籍 6 外部連結Jasmin 範例 编辑傳統以 HelloWorld 程式來開場 class public HelloWorld super java lang Object method public static main Ljava lang String V limit stack 2 limit locals 1 getstatic java lang System out Ljava io PrintStream ldc Hello World invokevirtual java io PrintStream println Ljava lang String V return end method編譯方式 编辑相關編譯使用方法如下 java jar jasmin jar examples HelloWorld j Windows 或 java jar jasmin jar examples HelloWorld j Unix Mac OS X 歷史 编辑Jon Meyer 與 Troy Downing 兩位為開發 Jasmin 程式的主要人物 他們並共同出版了名為 JAVA 虚擬機器 台灣歐萊禮 ISBN 957 8247 50 8 的書籍 Java Virtual Machine Oreilly ISBN 1 56592 194 1 註1由 Jon Meyer 開發的版本僅到 1 1 版 Oct 21 2004 而隨後由業餘人士接手開發與維護 而在 Daniel Reynaud 維護版本至 2 0 Dec 2 2005 時產生一延伸計劃 JasminXT 1 页面存档备份 存于互联网档案馆 即前述的 Tinapoc 但開發版僅至 0 4 alpha版本而已 整體說明文件仍是連結於 Jasmin 網頁可以參考 JasminXT 2 页面存档备份 存于互联网档案馆 而在 sourceforge 的 Tinapoc 開發網頁上則是無任何文件留存 僅二行文字說明 Tinapoc Is Not Another Pun On Coffee 與 and there is no J in it 而已 目前有另一延伸計劃 SPOOFAX JASMIN 3 页面存档备份 存于互联网档案馆 是一延伸 JasminXT 計劃 而維護轉放到 Github 4 页面存档备份 存于互联网档案馆 Jasmin 目前提供了 164 個指令 內容包涵了相同於程式語言的類別 例外 運算子 資料處理 數學處理與執行緒等 程 式本身的編輯可使用一般 的文字處理軟體來編寫 如 記事本 UltraEdit 或高階的程式編寫用的 IDE 介面軟體亦可 編寫完成後的檔案必需命名以 j 為結尾才可以作為組譯時使用 以運作於 Java 的虛擬機器內 Jasmin 目前仍是定訂為 SourceForge 組織內部的 Open Source project Project 維護最新維護時間 Apr 29 2013 但軟體檔案維護仍是 2 4 版 May 7 2010 註1 目前該書中文繁體版本已絕版 但目前仍有些二手書於市面交易 参考 编辑Java bytecode the Java class file format C to Java Virtual Machine compilers ARM9E a CPU family with direct Java bytecode execution ability Common Intermediate Language CIL a similar bytecode specification that runs on the CLR of the NET Framework Compiler Disassembler List of assemblers Instruction set Microassembler書籍 编辑Jon Meyer Java Virtual Machine O Reilly Associates 1st Edition March 1997 ISBN 978 1 56592 194 8外部連結 编辑Jasmin Official page at Sourceforge JaminXT Syntax 页面存档备份 存于互联网档案馆 Spoofax Jasmin 页面存档备份 存于互联网档案馆 Sun s Java Virtual Machine Specification 页面存档备份 存于互联网档案馆 Jasmin instructions 页面存档备份 存于互联网档案馆 Publisher of Java Virtual Machine 页面存档备份 存于互联网档案馆 personal website of Jon Meyer 页面存档备份 存于互联网档案馆 Programming Languages for the Java Virtual Machine 页面存档备份 存于互联网档案馆 Organization for Java Technology Specification 页面存档备份 存于互联网档案馆 Jasmin Java Assembler Interpreter 取自 https zh wikipedia org w index php title Jasmin amp oldid 73110914, 维基百科,wiki,书籍,书籍,图书馆,

文章

,阅读,下载,免费,免费下载,mp3,视频,mp4,3gp, jpg,jpeg,gif,png,图片,音乐,歌曲,电影,书籍,游戏,游戏。