Shiba/Shiba Byte Code
https://www.10106.net/~hoboaki/wiki/?Shiba%2FShiba%20Byte%20Code
ホーム
編集
添付
検索
最終更新
ヘルプ
新規
編集
凍結
リンク元
Wiki書式ヘルプ(整形ルール)
最新の40件
2020-07-12
Vulkan
2018-09-30
ゲームプログラマの小話
2018-07-21
チラ裏
2017-06-09
RecentDeleted
2016-12-13
Personal/アニメ&ゲーム記録
2016-10-27
CrossFramework/実装メモ
2016-09-28
CrossFramework
2014-12-28
Tool/Maya
2014-04-19
Private
2013-12-26
FrontPage
2013-11-30
CrossFramework/開発環境
2013-11-28
WikiTest
2012-09-27
C++/オープンソースライブラリゲームプログラミング/開発環境
2012-05-26
C++/コーディングスタイルの悩み
CrossFramework/コード規約
2012-02-16
JCurl
2011-12-31
Personal
2011-02-19
Tool/Doxygen
Tool
2011-02-17
C++/オープンソースライブラリゲームプログラミング
2011-02-16
CSharp/ちょこっとコード集
CSharp
2011-02-14
C++/オープンソースライブラリゲームプログラミング/トラブルとその解決
2011-02-13
Tool/XCode
C++/コーディング規則
2010-08-16
Shiba/メモ
2010-08-10
Shiba/Shiba VM
2010-08-09
Shiba/Shiba Language/文
2010-08-06
Shiba/Shiba Language/型
2010-08-01
Shiba/Shiba VM/メモ
2010-07-31
Shiba
Shiba/Shiba Byte Code
Shiba/Shiba Engine
Shiba/Shiba Language/ユーザー定義型
Shiba/Shiba Language/モジュール
Shiba/Shiba Language/字句
Shiba/Shiba Language/式
Shiba/Shiba Language/宣言
Shiba/Shiba Language/概要
Shiba/Shiba Language
Total : 2317
Today : 1 Yestrday : 0
Top
>
Shiba
> Shiba Byte Code
Shiba Byte Code
Shiba Byte Code
バイトコード
モジュール名
定数テーブル
シンボルテーブル
シンボル一覧
シンボル解決情報
バイトコード
Cでいう.oのファイル。
含まれるもの
モジュール名
定数テーブル
シンボルテーブル
シンボル一覧
シンボル解決情報
モジュール名
モジュール名が文字列として格納される。
定数テーブル
必要な定数テーブルの長さ。
コンパイル時に解決されている定数郡。
.oのファイルサイズ縮小のために,コンパイル時に解決されている定数郡は定数テーブルの先頭に置いておく。
そうしておくことで,リンク時に解決される定数郡のデータ量が.oから削減される。(.sbssと同じ考え方)
シンボルテーブル
必要なシンボルテーブルの長さのみ格納される。
シンボル一覧
モジュールはユーザー定義型リストを持つ。
ユーザー定義型リスト
ユーザー定義型についての情報が0個以上格納されている。
エンジンではユーザー定義型の情報が1つにつきSSObjectTypeが1つ生成される。
項目
内容
例
シンボルのパス
文字列
BaseLib.Math.Vector3
継承しているクラスのパス
文字列
Foo
仮想関数テーブルリスト
別項:仮想関数テーブルリストを参照
変数リスト
別項:変数リストを参照
関数リスト
別項:関数リストを参照
仮想関数テーブルリスト
仮想関数テーブルについての情報が0個以上格納されている。
エンジンでは仮想関数テーブルの情報が1つにつきSSVirutalFuncTableが生成される。
項目
内容
例
シンボルのパス
文字列
BaseLib.IDrawable
仮想関数シンボルテーブル
SymbolTableIndexの配列
変数リスト
変数についての情報が0個以上格納されている。
エンジンでは変数の情報が1つにつきSSVariableが1つ生成される。
項目
内容
例
型を示すシンボルのパス
文字列
float
シンボル名
文字列
x
staticフラグ
bool(staticか否か)
readonlyフラグ
bool(readonlyか否か)
constフラグ
bool(constか否か)
関数リスト
関数についての情報が0個以上格納されている。
エンジンでは関数の情報が1つにつきSSFunctionが1つ生成される。
項目
内容
例
シンボル名
文字列
add
戻り値の型を示すシンボルのパス
文字列
BaseLib.Math.Vector3
戻り値のconstフラグ
bool(constか否か)
引数リスト
別項:引数リストを参照
staticフラグ
bool(staticか否か)
constフラグ
bool(constか否か)
命令コード
バイトコード
引数リスト
引数についての情報が0個以上格納されている。
エンジンでは引数の情報が1つにつきSSFunctionArgが1つ生成される。
項目
内容
例
型を示すシンボルのパス
文字列
float
constフラグ
bool(constか否か)
refフラグ
bool(refか否か)
シンボル解決情報
シンボルの種類は変数・関数・ユーザー定義型の3つ。
変数
項目
内容
例
代入先
定数テーブル or シンボルテーブル
-
シンボルパス
解決するシンボルのパス
BaseLib.Math.Vector3.x
シンボルの何を取得するのか。
・変数オブジェクト(SSVariableのポインタ)
・サイズ(u32)
・先頭からのオフセット距離(u32)
-
関数
項目
内容
例
代入先
シンボルテーブル
-
シンボルパス
解決するシンボルのパス
BaseLib.Math.Vector3.add
引数リスト
引数の型のリスト
属性
const,staticなどの属性
シンボルの何を取得するのか。
・関数オブジェクト(SSFunctionのポインタ)
-
ユーザー定義型
項目
内容
例
代入先
定数テーブル
-
シンボルパス
解決するシンボルのパス
BaseLib.Math.Vector3
シンボルの何を取得するのか。
・ユーザー定義型オブジェクト(SSObjectTypeのポインタ)
・サイズ(u32)
-
Last-modified: Sat, 31 Jul 2010 20:34:21 JST (5011d)
Link:
Shiba
(5011d)