2.11 参考文献・資料

最近のruby-core (2017年3月) | Money Forward Engineers' Blog [#13188] Reinitialize Ruby VM. https://moneyforward.com/engineers_blog/2017/04/13/ruby-core-201703/

引退するメインフレームプログラマたち - その対策は? https://www.infoq.com/jp/articles/retiring-mainframe-programmers/

コンパイラ (情報系教科書シリーズ) 湯浅 太一 昭晃堂 2010/03 初版 第11刷

上記の書籍は、現在では出版社が変更になっています。

情報系教科書シリーズ コンパイラ 湯淺 太一 オーム社 2014/09

岩波講座 ソフトウェア科学〈〔環境〕5〉プログラミング言語処理系 佐々 政孝 岩波書店 1997/03 初版 第7刷

定本 Cプログラマのためのアルゴリズムとデータ構造 (SOFTBANK BOOKS) 近藤 嘉雪 ソフトバンククリエイティブ 1999/05 初版 第4刷

手書きLLパーサにおける左結合性を持つ演算子の左再帰をループで解決する - ふるつき https://furutsuki.hatenablog.com/entry/2018/02/09/184342

Kazuho's Weblog: C言語で可変長引数をとる関数を、型安全に書く方法 http://blog.kazuhooku.com/2014/12/c.html

最近のruby-core (2016年3月) | Money Forward Engineers' Blog [#12142] Hash tables with open addressing https://moneyforward.com/engineers_blog/2016/04/04/ruby-core-201603/

最近のruby-core (2016年11月) | Money Forward Engineers' Blog [#12142] Hash tables with open addressing https://moneyforward.com/engineers_blog/2016/12/01/ruby-core-201611/

スタックマシンの記事を読むためには、Web ブラウザのエンコーディングを日本語(EUC-JP)に切り替える必要がある場合があります。 Google Chrome や Microsoft Edge では以下の拡張機能が使えます。

テキストエンコーディング - Chrome ウェブストア https://chrome.google.com/webstore/detail/set-character-encoding/bpojelgakakmcfmjfilgdlmhefphglae/related?hl=ja

スタックマシン - プログラミング言語処理 http://www.hpcs.cs.tsukuba.ac.jp/~msato/lecture-note/comp-lecture/note8.html

スタックマシンへのコンパイラ - プログラミング言語処理 http://www.hpcs.cs.tsukuba.ac.jp/~msato/lecture-note/comp-lecture/note9.html

WebAssembly Specifications https://webassembly.github.io/spec/

Binary Format — WebAssembly https://webassembly.github.io/spec/core/binary/index.html

WebAssembly/wabt: The WebAssembly Binary Toolkit https://github.com/WebAssembly/wabt

WABT: The WebAssembly Binary Toolkitを使ってみる - Qiita https://qiita.com/ukyo/items/909d5132ae049c672755

【WebAssembly初心者必読】バイナリコードを使って「 WebAssembly 」の基礎を徹底解説してみた! | ヌーラボ https://nulab-inc.com/ja/blog/nulab/basic-webassembly-begginer/

WebAssembly(wat)を手書きする | 株式会社カブク https://www.kabuku.co.jp/developers/webassembly

Writing WebAssembly By Hand https://blog.scottlogic.com/2018/04/26/webassembly-by-hand.html

WebAssembly逆アセンブルして調べるテスト https://gist.github.com/mirichi/bafb7b4650c664374cce9dd9f73a33f8

WebAssemblyをはじめよう | WEBASSEMBLY USUI BOOK https://ukyo.github.io/wasm-usui-book/webroot/get-started-webassembly.html

LEB128な数の表現 - Dr.Deamon64 Wiki - Dr.Deamon64 - OSDN https://osdn.net/projects/drdeamon64/wiki/LEB128%E3%81%AA%E6%95%B0%E3%81%AE%E8%A1%A8%E7%8F%BE

LEB128 ‐ 通信用語の基礎知識 https://www.wdic.org/w/TECH/LEB128

平成26年度 イメージ&クレバー方式でよくわかる 栢木先生の基本情報技術者教室 (情報処理技術者試験) 栢木 厚 技術評論社 2013/12 第9版 第1刷

x64 アセンブリーの概要 | iSUS https://www.isus.jp/others/introduction-to-x64-assembly/

x64 の 64 ビットモードのエンコーディング概略 https://gist.github.com/tenpoku1000/24c249e32c512611c079ce87a59a6a52

コンパイラ (情報系教科書シリーズ) 湯浅 太一 昭晃堂 2010/03 初版 第11刷

上記の書籍は、現在では出版社が変更になっています。

情報系教科書シリーズ コンパイラ 湯淺 太一 オーム社 2014/09

x64 でのソフトウェア規約 | Microsoft Docs https://docs.microsoft.com/ja-jp/cpp/build/x64-software-conventions?view=msvc-160&viewFallbackFrom=vs-2017

x64 での呼び出し規則 | Microsoft Docs https://docs.microsoft.com/ja-jp/cpp/build/x64-calling-convention?view=msvc-160&viewFallbackFrom=vs-2017

x64 でのスタックの使用 | Microsoft Docs https://docs.microsoft.com/ja-jp/cpp/build/stack-usage?view=msvc-160&viewFallbackFrom=vs-2017

x64 でのプロローグとエピローグ | Microsoft Docs https://docs.microsoft.com/ja-jp/cpp/build/prolog-and-epilog?view=msvc-160&viewFallbackFrom=vs-2017

Gamasutra - In-depth: Windows x64 ABI: Stack frames https://www.gamasutra.com/view/news/178446/Indepth_Windows_x64_ABI_Stack_frames.php

Windows Anti-Debug Reference まとめ その1 - Twitterに書ききれないこと https://web.archive.org/web/20180804094336/http://pinksawtooth.hatenablog.com/entry/2015/08/12/013616

Saving Space When Saving Space - emsea https://emsea.github.io/2018/06/03/smaller-bss/

ADVANCED WINDOWS 第5版 下 Jeffrey Richter, Christophe Nasarre 著, (株)クイープ 翻訳 日経BP社 2011/04 初版 第2刷

データ構造アライメント - Wikipedia https://ja.wikipedia.org/wiki/%E3%83%87%E3%83%BC%E3%82%BF%E6%A7%8B%E9%80%A0%E3%82%A2%E3%83%A9%E3%82%A4%E3%83%A1%E3%83%B3%E3%83%88

ハッカーのたのしみ―本物のプログラマはいかにして問題を解くか Jr.,Henry S. Warren 著 翻訳:滝沢 徹, 鈴木 貢, 赤池 英夫, 葛 毅, 藤波 順久 エスアイビー・アクセス 2005/06 初版 第3刷

linux - How do I disassemble raw 16-bit x86 machine code? - Stack Overflow https://stackoverflow.com/questions/1737095/how-do-i-disassemble-raw-16-bit-x86-machine-code/34424146#34424146

Writing WebAssembly By Hand https://blog.scottlogic.com/2018/04/26/webassembly-by-hand.html

8086ファミリ・ハンドブック 相沢 一石 CQ出版 1991/12 初版 第4刷

80x86 80x87―ファミリー・テクニカルハンドブック RobertL. Hummel 著, 槌田 浩一 翻訳 技術評論社 1993/10 初版 第1刷

x86アセンブラ入門―PC/ATなどで使われている80x86のアセンブラを習得 (TECHI―Processor) 大貫 広幸 CQ出版 2006/01 初版 第1刷

IA-32 インテル® アーキテクチャ・ソフトウェア・デベロッパーズ・マニュアル 上巻: 基本アーキテクチャ https://www.intel.co.jp/content/dam/www/public/ijkk/jp/ja/documents/developer/IA32_Arh_Dev_Man_Vol1_Online_i.pdf

IA-32 インテル® アーキテクチャ・ソフトウェア・デベロッパーズ・マニュアル 中巻 A: 命令セット・リファレンス A-M https://www.intel.co.jp/content/dam/www/public/ijkk/jp/ja/documents/developer/IA32_Arh_Dev_Man_Vol2A_i.pdf

IA-32 インテル® アーキテクチャ・ソフトウェア・デベロッパーズ・マニュアル 中巻 B: 命令セット・リファレンス N-Z https://www.intel.co.jp/content/dam/www/public/ijkk/jp/ja/documents/developer/IA32_Arh_Dev_Man_Vol2B_i.pdf

x64 アセンブリーの概要 | iSUS https://www.isus.jp/others/introduction-to-x64-assembly/

インテル® エクステンデッド・メモリ 64 テクノロジ・ソフトウェア・ デベロッパーズ・ガイド 第 1 巻 リビジョン 1.1 https://www.intel.co.jp/content/dam/www/public/ijkk/jp/ja/documents/developer/EM64T_VOL1_30083402_i.pdf

インテル® エクステンデッド・メモリ 64 テクノロジ・ソフトウェア・ デベロッパーズ・ガイド 第 2 巻 リビジョン 1.1 https://www.intel.co.jp/content/dam/www/public/ijkk/jp/ja/documents/developer/EM64T_VOL2_30083502_i.pdf

Intel® 64 and IA-32 Architectures Software Developer Manuals | Intel® Software https://software.intel.com/en-us/articles/intel-sdm

Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 1: Basic Architecture rev.067 May 2018

Intel® 64 and IA-32 Architectures Software Developer’s Manual Volume 2 (2A, 2B, 2C & 2D): Instruction Set Reference, A-Z rev.067 May 2018

引退するメインフレームプログラマたち - その対策は? https://www.infoq.com/jp/articles/retiring-mainframe-programmers/

最終更新