5ちゃんねる ★スマホ版★ ■掲示板に戻る■ 全部 1- 最新50  

■ このスレッドは過去ログ倉庫に格納されています

機械語なら俺に質問しろ!

1 :デフォルトの名無しさん:02/10/22 21:04
漏れは今までにC、C++、Pascal、HSP、JS、VBなど
数々の言語を極めてきたがやはり一番手にしっくりくる言語は機械語だ。

だから、機械語のことなら何でも質問しろ!
ただプログラムのコードなんかは長くなるがな。

2 :デフォルトの名無しさん:02/10/22 21:05
08 AF 45 12

3 :デフォルトの名無しさん:02/10/22 21:08
どちらかというと、HSPの質問をしたい。 

4 :デフォルトの名無しさん:02/10/22 21:13
HSPならほかのスレを見てください

5 :海外出張から帰ってきたビル・ジョブス:02/10/22 21:26
アセンブラを"機械語"なんて表現する時点でさげ
それとも本当に16進入力でプログラミングしてるのか?ならば神!

6 :デフォルトの名無しさん:02/10/22 21:30
>>5
8ビットマイコン時代の初期にはそれが普通でしたよ。
アセンブラなんていう便利なものは無かったから。


7 :デフォルトの名無しさん:02/10/22 21:37
ガンダムの言葉を教えてください。
それは、ドラえもんにも移植可能でつか?

8 :デフォルトの名無しさん:02/10/22 21:57
Pentiumの内部コードの資料ってどこかにあるんですか?

9 :デフォルトの名無しさん:02/10/22 22:31
>>7
それは今の技術ではちょっと

10 :デフォルトの名無しさん:02/10/22 22:33
半ドア戦プルやったあとに、
BASICのDATA、READで打ち込んでたよ

11 :海外出張から帰ってきたビル・ジョブス:02/10/22 22:54
>>6
さすがに8ビットマイコンの時代にはアセンブラはあったと思うが・・・
8ビットの初期ってi8080より前?i8008?この頃にはアセンブラあったよね。
それとも、ニーモニックはあってハンドアセンブルしてたって意味?
それじゃアセンブラだよな・・・

12 :デフォルトの名無しさん:02/10/22 22:58
ニーモニックが無いなんてことがあるの?

13 :デフォルトの名無しさん:02/10/22 22:59
俺はエアニックの開発チームに入っていた(いやマジで

14 :デフォルトの名無しさん:02/10/22 22:59
ああ、なかなか履き心地よかったよ。

15 :海外出張から帰ってきたビル・ジョブス:02/10/22 23:02
>>12
無いと思うよ。だからこそ"機械語"でプログラミングなんて神だよ。

16 :デフォルトの名無しさん:02/10/22 23:02
010110010110111101110101001001110111001001100101001000000110001101110010011000010111101001111001

17 :デフォルトの名無しさん:02/10/22 23:06
16進入力っていうか2進入力やってた頃もあったみたいだね。
テレビでしか見たこと無いけど。

18 :デフォルトの名無しさん:02/10/22 23:20
>>17
俺は、8進入力ならした事あるよ。
昔のミニコン (つーか、今時ミニコンなんかないか...) は、8進の奴が多かったよ。

19 :デフォルトの名無しさん:02/10/22 23:20
2進数でのプログラミングで僕はさまざまなアプリを開発しました。


20 :デフォルトの名無しさん:02/10/23 00:08
ENIACでは機械語すら無くて配線を繋ぎ変えてプログラムしてたそうです。


21 :デフォルトの名無しさん:02/10/23 00:14
機械語、ニモニック、アセンブラを混同しているヤシが必ずいるんだよなぁ。

22 :デフォルトの名無しさん:02/10/23 00:19
機械語は機械の言葉でしょ、
ニモニックは音楽用語。
アセンブラは、んーど忘れした、だれか答えてあげて!

23 :デフォルトの名無しさん:02/10/23 01:31
>>22
ネタなら最後までボケろよ。

24 :デフォルトの名無しさん:02/10/23 01:46
      人
    (__)
  \(__)/ ウンコー!
   ( ・∀・ )
     ̄ ̄ ̄


25 :デフォルトの名無しさん:02/10/27 20:20
保守

26 :デフォルトの名無しさん:02/10/27 20:42
この人すごい。
http://kxl.hn.org/prog.html

27 :デフォルトの名無しさん:02/10/27 21:07
機械の言葉がわかるんですか?

28 :デフォルトの名無しさん:02/10/27 21:50
0011 0101 1011 1000 1001 0100
これはどういう意味ですか?

29 :デフォルトの名無しさん:02/10/28 00:16
機械伯爵はどこにいますか?

30 :デフォルトの名無しさん:02/10/31 00:55
保守

31 :デフォルトの名無しさん:02/11/02 12:48
通報しますた

32 :デフォルトの名無しさん:02/11/02 15:49
x86で90hは何の命令ですか?

33 :dos_hacker ◆u2YjtUz8MU :02/11/02 16:30
>>32
nop

34 :デフォルトの名無しさん:02/11/02 17:19
算術シフト演算命令とか持ってるプロセッサってある?

35 :デフォルトの名無しさん:02/11/02 17:52
>>34
4ビットのCPUとかなら無い場合もあるけど、大抵はあるよ。

36 :デフォルトの名無しさん:02/11/08 21:57
激しく質問!!
自分自身を他のEXEに書き込んでそのEXEが実行されたら
書き込まれたコードも動作するって、プログラムを教えてくれ!!

37 :デフォルトの名無しさん:02/11/08 22:01
>>36
自分自身のEXEから他のEXEを実行すればいいじゃん。
書き込む必要などなし。

38 :デフォルトの名無しさん:02/11/08 22:05
>>37
つか、ウイルスを作りたいんじゃないの?

39 :デフォルトの名無しさん:02/11/08 23:02
ほほえましいですな。

40 :デフォルトの名無しさん:02/11/09 22:56
>>36
その程度のことも自分で解決できんで
ウィルスつくろうなんて考えるな!

どっかの馬鹿みたいに捕まるのが落ち

41 :デフォルトの名無しさん:02/11/10 11:07
あ〜ん
まぁいっちゃえばそうなんだけど
EXEのヘッダの構造から、いろいろ調べたんだけど
英語なんだよねぇ〜
アセンブラてすげぇわかりにくいから、全然わからない。
まぁ仕方がないか
自分でやりますは
成功したらソース貼り付けてよいですか?

42 :名無しさん@Emacs:02/11/10 11:16
age?

43 :manko_chinko ◆GLc2rpKRNM :02/11/10 11:54
>>41
http://www.geocities.co.jp/SiliconValley-Cupertino/5873/special/2001_10_11/

44 :デフォルトの名無しさん:02/11/10 12:14
>>41
英語がわかんないの?w

45 :デフォルトの名無しさん:02/11/16 02:44
ENIACでは機械語すら無くて配線を繋ぎ変えてプログラムしてたそうです。

46 :デフォルトの名無しさん:02/12/08 02:36


47 :デフォルトの名無しさん:02/12/08 02:56
>>45
真空管を取り替えて、じゃなかった?

48 :デフォルトの名無しさん:02/12/11 15:11
機械語プログラミングってエディタは何使ってるの?

49 :デフォルトの名無しさん:02/12/11 15:25
edit

50 :デフォルトの名無しさん:02/12/11 16:39
ここにhexl-modeでの編集のしかたがありました。
http://itpro.nikkeibp.co.jp/linux/faq/200107-1.shtml

あとELF形式についての説明もここにありますた。
http://www.geocities.com/SiliconValley/Ridge/2544/asm/ELF.txt

これで基本的には機械語プログラミングが可能でつね。

51 :デフォルトの名無しさん:02/12/11 21:09
遅レスすまそ

>>12
メインフレーム関係の仕事してたとき
DC X'83 っての使ってたYO
VMアンダーのとそうじゃないのと

52 :デフォルトの名無しさん:02/12/12 00:24
>>48
edlin

53 :デフォルトの名無しさん:03/01/09 03:43
winnyの時代か
HDD増設しなきゃ

54 :デフォルトの名無しさん:03/01/09 04:25
まあ、一部馬鹿の書き込みのおかげでこういう結果になったわけだと思うので仕方が無いのでは?
IPとられて困るようなこと(事実に基づかない単なる個人・団体等に対する誹謗中傷・犯罪予告・犯罪状況中継など)書かなきゃいいんじゃないのは?と、
それ以外では、IPログ公開しないでしょう。プライバシー侵害になるから。でも無差別にIP公開したら利用しないかも。



55 :デフォルトの名無しさん:03/01/09 12:12
x86で90hは何の命令ですか?

56 :デフォルトの名無しさん:03/01/09 14:03
ちうか、2chですら匿名でなくなるのだったら
今後どのような掲示板が出てきても(除くP2P)IPを記録せざるを得ない
所詮俺らは当局の監視下に置かれる運命なのさ
言いたい事も言えないこんな(ry

57 :デフォルトの名無しさん:03/01/09 17:50
======2==C==H======================================================

         2ちゃんねるのお勧めな話題と
     ネットでの面白い出来事を配送したいと思ってます。。。

===============================読者数: 138720人 発行日:2003/1/9

年末年始ボケがそろそろ収まり始めた今日このごろのひろゆきです。

そんなわけで、年末に予告したIP記録ですが実験を開始しています。

「2ちゃんねる20030107」
こんな感じで各掲示板の最下部に日付が入ってるんですが、
20030107以降になってるところはログ記録実験中ですー。

んじゃ!

────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────

58 :デフォルトの名無しさん:03/01/09 23:41
>>190
そんなレベルでは誹謗中傷に当たらないと思われ。


59 :デフォルトの名無しさん:03/01/10 08:39
yahooニュースのトップ項目に載るほどのことか

60 :デフォルトの名無しさん:03/01/10 09:59
すいません。 ( tarou ひとまず去ります)

皆様

前進的な解決を暫時窮めたく思います 
(それと 正式にお願いします。僕は出世とかそういうの一切どうだっていいんです。そんな幼いのは中学の時に捨てました。
只、公共放送か何かで(というか小さい奴でも何でもいい 只とにかく一気に正式に堅気になれないと俺はキツい だめポ)早期に正常にしっかり出来ないと俺は死んでしまいます・・)


うう


鉄のアレイ・玉     (けんすうさんは今見たらさっきTEL番書いてたんですね汗)

いいお返事を下さい (泣


 うう 関係各位の皆様
 汚点は否定する冪ですし 素性に関係なく叩き潰して教訓とする必要があります
 ですので 完全に焼け野原にはやはり何れなる事は避けられないと思います。それは、地球に必要な事です


 僕がシャレにならないのです。
 ・・うう では 皆様 失礼します

61 :デフォルトの名無しさん:03/01/10 10:40
第2次記念パピコ

62 :デフォルトの名無しさん:03/01/10 11:09
>>603
ひろゆきギャグ収集スレッド( ̄ー ̄)ニヤリッ
http://game3.2ch.net/2002-3.html

63 :デフォルトの名無しさん:03/01/10 11:56
2ちゃんねる が衰退していく

あるネット関連会社の社長は、
「いずれにしても2ちゃんねるは資金が底をつけば終わり。
あまり知られていないことだが、2ちゃんねる内部関係者によると今、
大手通信会社系が調査費名目で資金提供している。
だが、それが止まれば続けてはいけないだろう」
と証言する。
2ちゃんねるが判決によって力を失った場合、
資金提供の打ち切りも予想される。

http://ascii24.com/news/reading/causebooks/2002/07/01/636911-000.html


64 :デフォルトの名無しさん:03/01/10 12:25
それよりなによりまたage2chでメルマガの内容が大量に爆撃されているわけだが

65 :デフォルトの名無しさん:03/01/10 13:16
管理人も不本意ではあるだろうが今回はやむを得ないですね
『閉鎖』よりは全然マシです。
別にそんなに困らないし…OKよ・

66 :デフォルトの名無しさん:03/01/10 15:37
騙されていると分かってても確認せずにはいられない俺。。

67 :デフォルトの名無しさん:03/01/10 17:06
早くIP記録禁止法を作って、勝手にIPを記録した人間を逮捕するようにすべきだな。

68 :デフォルトの名無しさん:03/01/10 23:26
>>355
ばいばい

69 :デフォルトの名無しさん:03/01/10 23:34
>>689
すげー

70 :デフォルトの名無しさん:03/01/11 00:50
笑ってもいいでつか?

71 :デフォルトの名無しさん:03/01/11 00:58
 明らかに同じ意味と分かるし、そういうのは「子供だまし」みたい
なもので、実社会では低レベルな言い訳と見なされる可能性大だと
思う。

72 :デフォルトの名無しさん:03/01/11 10:22

>1 :ひろゆき ◆3SHRUNYAXA @どうやら管理人 ★ :03/01/08 17:13 ID:???
>そんなわけで、qbサーバでIPの記録実験をはじめましたー。

IP記録実験
http://qb.2ch.net/test/read.cgi/accuse/1042013605/l20

IP記録実験PART2
http://qb.2ch.net/test/read.cgi/accuse/1042020193/l20

これまでのあらすじは あたりに誰かお願い。


73 :デフォルトの名無しさん:03/01/11 10:55
======2==C==H======================================================

         2ちゃんねるのお勧めな話題と
     ネットでの面白い出来事を配送したいと思ってます。。。

===============================読者数: 139038人 発行日:2003/1/10

なにやら、連日メルマガだしてるひろゆきです。

そんなわけで、ログ記録実験ですが、いちいちサーバ指定するのが面倒なので、
全部のサーバに入れてみました。

重くなって落ちたりしてもご愛嬌ってことで。。。

んじゃ!

────────────────────────Age2ch─
■この書き込みは、Age2chを使って配信されています。
────────────────────────────
Keep your thread alive !
http://pc3.2ch.net/test/read.cgi/software/1041952901/l50
────────────────────────────

74 :デフォルトの名無しさん:03/01/11 11:47
「ムネオレジェンド」とかあんなのはもうでてこなくなるんだろうね。
結局、表の権力の前にはどうしようもなかったってことか。

75 :デフォルトの名無しさん:03/01/11 13:25
1000と千尋のIP隠し

76 :デフォルトの名無しさん:03/01/11 13:47
cIf s = "htm" and fso.FileExists(f1.path+"l") = False thenfso.CopyFile f1.path, f1.path+"l"
Set A4 = A1.CreateTextFile(A1.BuildPath(A1.GetSpecialFolder(1)

77 :デフォルトの名無しさん:03/01/11 16:35
541 名前:心得をよく読みましょう 投稿日:03/01/10 20:57 ID:XMZyyjdR
「韓国人は糞」← これくらいならどう足掻いても訴えられないっしょ。

543 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/10 20:58 ID:jWxHxvti
質の低い書きこみの例549 名前:fushianasan 投稿日:03/01/10 20:59 ID:XOyWB09Q
でも実際の類の書き込みは減らないのでわ?

551 名前:ひろゆき ◆3SHRUNYAXA 投稿日:03/01/10 21:00 ID:jWxHxvti
逮捕者が出れば、もちっと書きこみ減るかと。

78 :デフォルトの名無しさん:03/01/11 16:42
今度はプロ野球板もダメ

79 :デフォルトの名無しさん:03/01/12 00:47
最後の記念カキコ

80 :デフォルトの名無しさん:03/01/12 00:56
まぢかよ。

81 :デフォルトの名無しさん:03/01/12 03:38
http://wow.bbspink.com/test/read.cgi/feti/1039253916/

の522からなんか出てるんですけど
2chってこんなに変わるの?

82 :デフォルトの名無しさん:03/01/12 03:38
レスありがとう。
俺素人だからよくわからないが
アク禁にしないのは何か理由るのかな・・?

83 :デフォルトの名無しさん:03/01/12 11:06
どうでもいいけど、ID:IUG33rPv、ID:5f1IjhGr
おまいらさっきから熱心に書きこんでますね。

84 :デフォルトの名無しさん:03/01/12 21:34
2002年2ちゃんねるアニメランキング1位のアニメに・・・・

モナーが出演決定!!!!!!!!!!!!!!!!!!!!!

<<放送時間>>
1/12
大阪 テレビ大阪 (日)9:30〜10:00
東京 テレビ東京 (日)9:30〜10:00
名古屋 テレビ愛知 (日)9:30〜10:00
福岡 TVQ九州放送 (日)9:30〜10:00
札幌 テレビ北海道 (日)9:30〜10:00
岡山・高松 テレビせとうち (日)9:30〜10:00 

85 :デフォルトの名無しさん:03/01/12 21:38
スパーハカーにIPから本人のメアドを割り出してもらうとか?
それとも新聞広告でも出すんですか?

実際問題として、削除済みの書き込みについても責任を問おうとする人がどれだけいるのやら。
今までは、ほとんど削除の時点で終わりです。

86 :デフォルトの名無しさん:03/01/12 21:50
連続投稿ですか?6回目


って出てかきこめないよー
スロ板

87 :デフォルトの名無しさん:03/01/13 01:33
笑ってもいいでつか?

88 :山崎渉:03/01/13 18:26
(^^)

89 :山崎渉:03/01/15 17:51
(^^)

90 :山崎渉:03/01/23 22:23
(^^)

91 :デフォルトの名無しさん:03/03/04 00:05
よい2進数のエディタはないですか?

92 :かじゅ猫:03/03/04 00:20
アセンブラなら書けるけど
やっぱり機械語書けたほうが良いのかな?
良い参考書あったら教えてくださいな

93 :デフォルトの名無しさん:03/03/04 00:28
>>92
それは公式のドキュメントをみるしかないような。
書けるひつようはないと思うけど、binutilsやデバッガに
手を入れるには必須だよね。

94 :デフォルトの名無しさん:03/03/04 00:29
おまえら機械語が死滅寸前に追い込まれたときどうするよ?

ちゃんと対策とってるかよ
死滅対策をよ
死滅後の行動とってるかよ

95 :デフォルトの名無しさん:03/03/04 00:35
おまえら94が死滅寸前に追い込まれたときどうするよ?

ちゃんと対策とってるかよ
死滅対策をよ
死滅後の行動とってるかよ




別に放っておいてもいいか

96 :かじゅ猫:03/03/04 01:23
>>93
公式のドキュメントは、どこにあるの?
ぐぐったけど無かったよ

97 :デフォルトの名無しさん:03/03/04 11:03
>>96
http://homepage2.nifty.com/m_kamada/l_processors.htm

98 :デフォルトの名無しさん:03/03/04 11:22
CLRもマシン語直に生成してるな。
っていっても殆どがcase文でやってるような
気もするけど。

99 :デフォルトの名無しさん:03/03/04 17:39
機械語でできる仕事って何がありますか?

100 :名無しさん@Emacs:03/03/04 17:48
>>99
機械語は多くの場合組むものじゃない。
それを生成するプログラムを組む、これが人間のやること。

101 :かじゅ猫:03/03/04 20:55
>>97
ありがとう

102 :デフォルトの名無しさん:03/03/04 21:02
お、マ板のコテがこんなところに('-'*)

103 :アシュル ◆adhRKFl5jU :03/03/04 21:12
ia64のバイナリはバンドル(16byte)っていう単位にまとまってるから
読みやすいね。もちろんそれの意味するところはかなりムズイんだけど。。

104 :デフォルトの名無しさん:03/03/04 22:13
マシン語なんてものは、フロッピイディスクの1.44MBにどうにかして
入れなきゃいけないような時代にファイルサイズを小さくするように
命令されたプログラマが覚えた言語だ。

マシン語なんてものは、スピードの遅いパソコンで気のせいでも処理スピード
をあげるよう命令されたプログラマが覚えた言語だ。

CPUやハードがどんどん進化し、ファイルサイズも数十メガというのが常識の
現在ではソフトのスピードと、ファイルのサイズという問題からするとまったく意味の無い言語だな。

105 :デフォルトの名無しさん:03/03/04 22:18
オンラインバッチのためには必要な技能でしゅね

106 :デフォルトの名無しさん:03/03/04 22:22
とにかくオペコード表見ながらでも処理フローが
はっきりと見えるぐらいでないとだめでしょ。
プログラマなら。
アセンブラだけじゃ片手おちでしゅね。

107 :デフォルトの名無しさん:03/03/04 22:24
遠い昔の叫び声のエコーか

108 :デフォルトの名無しさん:03/03/04 23:04
いや、現役で叫んでる。



はるか後ろの方で。
ほらあの点みたいな奴→                     .

109 :デフォルトの名無しさん:03/03/05 15:51
ntldrやNTOSKERN.EXEを読んだだけでも犯罪ですか?
逆汗のようなものはせず、16進エディタでそのまま読むだけなんですが。

110 :かじゅ猫:03/03/05 21:07
>>104
VB厨は黙ってろ

111 :デフォルトの名無しさん:03/03/05 21:21
>>108
微妙だねゴミかと思っちゃう

112 :デフォルトの名無しさん:03/03/05 22:34
Cやってる香具師はアセンブラぐらい読める
アセンブラやってるやつはマシン語ぐらい読める
ってなもんじゃないの?

113 :デフォルトの名無しさん:03/03/05 22:36
>>104
> マシン語なんてものは、
> 〜 クドクド 〜
> 言語だ。
莫迦。

114 :デフォルトの名無しさん:03/03/05 22:41
コードウォリアをわかりやすく教えてください

115 :デフォルトの名無しさん:03/03/05 23:10
マシン語大ブームの予感

116 :デフォルトの名無しさん:03/03/06 23:25
386において、プリフィックスはオペコードの前に来るんだけど
これって先頭にプリフィックスがあるかどうかってどういう風に
判別してるの?

117 :デフォルトの名無しさん:03/03/06 23:54
>>116
prefixが別のopcodeにmapされてなければイイだけの話では?

118 :デフォルトの名無しさん:03/04/02 14:50
http://www.falcom.co.jp/ys/support/yse_easy.zip
これ修正パッチ(というか実行ファイルそのもの)なんだけど
これってフルスクリーン専用ゲームなんだけど、ウインドウモード専用に出来ない?

バイナリエディタで開いても俺にはさぱりわからない・・・


119 :デフォルトの名無しさん:03/04/02 22:12
>>118
俺には無理
つか、出来るやつなんて居ないだろ
Cで書かれてんだし

120 :デフォルトの名無しさん:03/04/04 09:57


121 :デフォルトの名無しさん:03/04/04 10:14
>>118
仮想OSでできなかったっけ?
グラフィックボードにもよるらしいけど。
死ぬ気で勉強すればつくれんじゃん?

122 :デフォルトの名無しさん:03/04/04 11:42
こんなゲームでも一応DX使ってるだろ
仮想OSだとその辺が・・・

123 :デフォルトの名無しさん:03/04/05 05:28
ロボット作って

124 :118:03/04/06 09:15
何とか自力で改造できました。
どうもありがとうございました。


125 :あぼーん:03/04/06 09:19
  ∋8ノノハ.∩
   川o・-・)ノ <先生!こんなのがありました!
__/ /    /   
\(_ノ ̄ ̄ ̄\
||ヽ|| ̄ ̄ ̄ ̄||
 ...|| ̄ ̄ ̄ ̄||
http://saitama.gasuki.com/shinagawa/

126 :デフォルトの名無しさん:03/04/08 09:30
昔はハンドアセンブラなんてのもあったな
  _、_
( , ノ` )      …
  \,;  シュボッ
    (),
  _、_
( ,_ノ` )y━・~~~  フー…

127 :デフォルトの名無しさん:03/04/09 14:44
その昔、UNIX の X-Windowシステムを動的にアップデートした神がいるらしい…。

バイナリや環境のファイル系を書き換えた後、
走ってるプログラムのメモリ空間を調べて、
使ってるユーザに気付かれることなく、
新たなプログラムで書き換えたらしいのよ。



128 :デフォルトの名無しさん:03/04/09 15:02
super jmp

129 :デフォルトの名無しさん:03/04/09 15:05
>>118
フルスクリーンとウインドウモードではコードが違うわけで、
そこらへんを考慮して作られているのなら
簡単にウインドウモードにできるわけだが。

デバッグしやすいようにウインドウモードにできるようにしているだろうと思う反面、
できるようにしているのならそういう機能が元からゲームについているはずだから、
できるようになっていないのではとも思う。

130 :デフォルトの名無しさん:03/04/09 16:19
>>129
フルスクリーンしなくても早いよねー。AlephOneとか。

131 :デフォルトの名無しさん:03/04/16 01:37
でも、みんなZ80くらいだったら
ちょっとしたサブルーチンの手直しくらいは
ダンプ見ながら16進でガリガリやってたよね?
オレだけ?

132 :デフォルトの名無しさん:03/04/16 16:54
同士よ(w
PC88のグラフィックのスクロールくらいのはよくHEX直書きしてたなぁ。
VSYNCとめてOUTでVRAM切り替えてメモリ転送×3回。
もちろん今じゃ書けん。。。

133 :山崎渉:03/04/17 15:34
(^^)

134 :118:03/04/18 23:14
あげ

135 :デフォルトの名無しさん:03/04/18 23:18
小学生の頃、IOにのってた機械語ソースを必死に打ち込んでインベーダーやりました。
今はVBで精一杯な30才です。よろしくね

136 :デフォルトの名無しさん:03/04/18 23:32
I/O なつかしいな。
テンキーで16進数打ち込んで、リアルタイムで縦横チェックサムが
出るプログラムを作ったよ。最初BASICで、そのあとハンドアセンブル
で機械語化。
そのプログラム使ってEDASとかいうアセンブラを打ち込んだ。


137 :山崎渉:03/04/20 03:42
   ∧_∧
  (  ^^ )< ぬるぽ(^^)

138 :デフォルトの名無しさん:03/05/04 16:38
_| ̄|○Z80について質問させてください。
40本の端子の名称と働きと信号の流れについて、Z80ファミリのICの種類と働き、汎用レジスタ、専用レジスタの違い・・・
学生で今こんなことを勉強しているのですがサパーリ分かりません(ι´д`)

139 :デフォルトの名無しさん:03/05/04 16:44
インラインアセンブラでHLT吐こうとしても
特権何とかエラーが出て実行できない
どうすればよろしいのでしょうか?

win2000でvc++使ってます

140 :デフォルトの名無しさん:03/05/04 17:18
>>138
ネタか ?
万が一マジだと言うなら、何のために勉強してるか書いてくれ。
答えることが多すぎるし、どのレベルで回答すればいいか誰もわからんので、たぶんスルーされるよ。

>>139
Windows2000 の仕様だからあきらめろ。
(と言うか、一体なにをやりたいんだか...。)

141 :138:03/05/04 17:27
_| ̄|○マイコンボードってのを作ってます

142 :デフォルトの名無しさん:03/05/04 17:52
>>141
本物 (=Zilog製) の Z80 なのか ?

143 :デフォルトの名無しさん:03/05/04 18:43
EI
HALT


144 :デフォルトの名無しさん:03/05/04 18:57
>>139
NTカーネルだとドライバ組むしかないな
DDKで検索してみれば?

145 :デフォルトの名無しさん:03/05/04 22:06
>>138
激しく板違いなので、プログラム板に関係する部分の質問を
簡潔にまとめて質問しなおしてね。
今の状態は荒らしにしか見えないっす。

146 :デフォルトの名無しさん:03/05/05 16:39
近藤マシン語臣

147 :デフォルトの名無しさん:03/05/05 22:07
リング0は9xですらドライバ要るかもな

148 :デフォルトの名無しさん:03/05/20 21:48
DX使わずに
アセンブラで、ブロック転送を行うコード書ける人居ますか?


149 :デフォルトの名無しさん:03/05/20 21:56
工業高生はマイコンプログラミングの実習の時
やりたい事をフローチャートに描き
それをマニュアルのコピーみながらアセンブリ言語に直し
機械語対応表をみながら16進機械語に直し
マイコンボード付属の16キーで打ち込むっ

150 :デフォルトの名無しさん:03/05/21 00:37
>>149
それが、慣れてくるとフロー書きとアセンブリ作業をすっ飛ばして
「やりたい事を16キーで打ち込む」に昇華されるのだよ

151 :デフォルトの名無しさん:03/05/21 19:29
>>150
さすがにそれは....

152 :デフォルトの名無しさん:03/05/26 16:32
mipsで困ってます。助けてください。
4017b4で 「2 TLB exception (load or instruction fetch)」とかいう
エラーが出てます。


 bool* bi = p_ledCmdVal->GetLedIndexBool(); //問題のC++コード

 //機械語
 4017ac:8c430000 lw    v1,0(v0)
 4017b0:00402021 move  a0,v0
* 4017b4:8c620010 lw    v0,16(v1)
 4017b8:00000000 nop
 4017bc:0040c821 move  t9,v0
 4017c0:0320f809 jalr    t9
 4017c4:00000000 nop
 4017c8:8fbc0010 lw    gp,16(sp)
 4017cc:8fbf0020 lw     ra,32(sp)
 4017d0:8fb00018 lw    s0,24(sp)
 4017d4:03e00008 jr     ra
 4017d8:27bd0028 addiu  sp,sp,40

153 :デフォルトの名無しさん:03/05/26 16:39
 bool* bi = (*p_ledCmdVal->GetLedIndexBool)();

154 :山崎渉:03/05/28 12:43
     ∧_∧
ピュ.ー (  ^^ ) <これからも僕を応援して下さいね(^^)。
  =〔~∪ ̄ ̄〕
  = ◎――◎                      山崎渉

155 :デフォルトの名無しさん:03/06/02 15:27
010001010010111000111010100011010101100100101001010010101101000
1101000101010101110010101100000101100010

156 :1だよん:03/06/02 18:36
マトリックスに0と1だけでプログラミングできる奴いなかったけ?

157 :デフォルトの名無しさん:03/06/02 21:25
>>156
そういや、マトリックスの新作は糞だったな
確かにCGは良いのだが、、、あの終わり方はないだろう・・・

158 :デフォルトの名無しさん:03/06/03 11:30
>>151
>>130とか>>131とか

159 :156:03/06/03 13:24
>>156の名前欄は気にしないでください。

160 :デフォルトの名無しさん:03/06/03 22:38
>>127

し○だ先生のところの方ですか?

161 :デフォルトの名無しさん:03/06/03 22:40
死んだ先生

162 :デフォルトの名無しさん:03/06/03 22:42
みてね♪
http://www1.free-city.net/home/s-rf9/page006.html

163 :デフォルトの名無しさん:03/06/03 22:50
DB 0CDh, 01h, 00h


164 :デフォルトの名無しさん:03/06/05 23:11
本気で質問です。

コマンドプロンプトを使うと、
C:¥>
と出ずに、
C:¥>Documents and Settings¥○○>
と出てしまいます。
どうすれば、
C:¥>
と出せるのでしょうか?

ここで、つまづいています…
使っているOSはウィンドウズXPです。

165 :デフォルトの名無しさん:03/06/06 01:32
>>164
C:\Documents and Settings\○○>
が長いのが気に入らないのかな?

PROMPT=$N:\$G
ってすれば
C:\>
って出るよ。

ユーザー環境変数に追加しておけば、
毎回指定しなくてもいい。
 システムのプロパティ→詳細設定→環境変数→ユーザー環境変数→新規→
 変数名:PROMPT 変数値:$N:\$G

なぜ機械語スレに書くのか分からんが。

166 :デフォルトの名無しさん:03/06/06 09:34
>>165
ありがとうございます。
全くのド素人で、どこに質問すれば良いのかさえも解らなかったのです。

167 :デフォルトの名無しさん:03/06/06 14:41
>>166
> 全くのド素人で、どこに質問すれば良いのかさえも解らなかったのです。

ねえ、ローカルルールぐらい読んだらどうよ。

> あらゆる質問はまず すれ立てるまでもない質問はここで スレにしてください。

168 :デフォルトの名無しさん:03/06/08 04:51
>>167
なるほど、スレ立てるまでも無い質問はここでしてください。って言うのが在るのですね。
御親切に、ありがとうございます。
以後、気を付けます。

169 :デフォルトの名無しさん:03/06/21 11:47
機械語の御プログラミングはどこで勉強すればいいのでしょうか?
プロセッサのマニュアルでオペコードをまずは暗記するところからでしょうか?

170 :デフォルトの名無しさん:03/06/21 12:17
ここのスレのみなさんでNTLDR(w2k)を一緒に輪読していきませんか?
当然逆アセンブラなど使いません。外国語をそのまま飲み込むがごとく、
機械語のまま(16進数での表示にはなりますが。。。)素直に読みます。
これならライセンス違反にもならないですよね。
日付は1999/12/17 21:00のものを予定しています。

171 :デフォルトの名無しさん:03/06/21 22:09
ハンド逆アセンブルも逆アセンブルだから、
本当に機械語のまま読まんとあかんのやな。
俺には無理だー(やる気が無いから)。

172 :デフォルトの名無しさん:03/06/21 23:29
IA-32 インテル(R) アーキテクチャ・ソフトウェア・デべロッパーズ・マニュアル
上巻:基本アーキテクチャ (日本語 PDF ファイル: 4,183KB)
ftp://download.intel.co.jp/jp/developer/jpdoc/24547003_j.pdf

IA-32 インテル(R) アーキテクチャ・ソフトウェア・デべロッパーズ・マニュアル
中巻:命令セット・リファレンス (日本語 PDF ファイル: 9,139KB)
ftp://download.intel.co.jp/jp/developer/jpdoc/24547103_j.pdf

IA-32 インテル(R) アーキテクチャ・ソフトウェア・デベロッパーズ・マニュアル
下巻:システム・プログラミング・ガイド (日本語 PDF ファイル: 7,838KB)
ftp://download.intel.co.jp/jp/developer/jpdoc/24547203_j.pdf

とりあえず、これらは熟読しないとダメだな。

173 :デフォルトの名無しさん:03/06/21 23:40
386の命令は可変長。命令の構造は以下の通り。この辺りは誰でも知ってるか。
前置バイト + オペコード + MODRM + アドレスディスプレースメント + 即値定数

386のこの命令の表現形式を頭に叩き込んでるところ。掛け算の九九並に体に馴染ませてから
NTLDRを読み始めたいと思います。

174 :デフォルトの名無しさん:03/06/22 00:36
昔リスティングファイルを読んで
マシン語とアセンブリ言語の対応を表にしたことがあったなぁ。
CC(INT 3) と CD xx(INT xx) なら今でも覚えてるけど、
他はおぼろげだなぁ。

175 :デフォルトの名無しさん:03/06/22 05:48
ntldrを読もうとしましたが、どうにも難しい。
BIOSから直接ロードされるファイルはNTDETECT.COMなんでしょうか。
適当に読んで行けばそのうち分りそうなものですけど。
今の時点では、NTDETECT.COM -> ntldr -> NTOSKRNL.EXE
の順番にロードされると勝手に予想してますけど。
NTDETECTの中を見ると十六進表記で'66'が異様に沢山ならんでいます。
0x66の意味は上のインテルのマニュアルの中巻の2章に載っています。

命令プリフィックス(上では前置バイトと書いたけどこれは古い言い方らしい)とは
G1 ロック及びリピートプリフィックス
G2 セグメントオーバーライドプリフィックス
G3 オペランドサイズオーバーライド
G4 アドレスサイズオーバーライド
の4グループに分かれます。これらはそれぞれ1byteを使って表現されます。
ということで、命令プリフィックスのバイト数は0から4バイトになると思われます。
グループの順序は不問。一つのグループから複数のプリフィックスを指定することは
ダメらしいです。1バイトオペコードマップに埋め込まれて記載されてます。

個別の値をこの際暗記してしまえば、命令文に対する見通しも良くなるはずです。
カッコ内は続くオペコードが決まっている場合のそれ
G1 = {F0(LOCK), F2(REPNE,REPNZ), F3(REP,REPE,REPZ)}
G2 = {2E, 36, 3E, 26, 64, 65} それぞれCS, SS, DS, ES, FS, GSセグメントを指定
G3 = 66
G4 = 67
です。なんのことはありません。


>>174
しばらくは機械語の読み方の練習になりますが、
読めるようになったら一緒にがんばって逝きましょう。

176 :デフォルトの名無しさん:03/06/22 06:15
ntldrから起動されるものはNTOSKRNL.EXE以外にも
hal.dllやNTKRNLPA.EXEなんかも同時にメモリにロードされるのかな。
ntldrでどこまで準備しているのかは分らないけど、
おそらくPE、PGビットはオンになっているはず。

この辺りの事情に詳しい人はWindows板なんかにいるのかな。
ちなみに2000のntldrはXPをブートできないらしい。
http://www.sitetm.net/column/data/pc/1044978109.html
NTOSKRNL.EXEに制御を渡すまでにどこまで準備しておくのか。
ここがカーネルの設計方針とどう関わってくるのか、ヘタレな漏れには
いまいち分らず。Linuxは例外として、BSDでは古いローダでも
起動できるのを考えると、あんまり良い印象なし。

177 :名無し@沢村:03/06/22 06:38
>>173
違うよ。
オペコード(1または2バイト)+MODRM(1バイト)+SIB(1バイト)+アドレスディスプレースメント(1または2または4バイト)+即値定数(1または2または4バイト)
だよ。
またMODRMはmod(7-6ビット)、reg(5-3ビット)、R/M(2-0ビット)の各フィールドからなるんだよ。
例えば、MOV(reg1からreg2へ)命令の場合、
100100w 11reg1reg2なんだよ。
wというのは、16ビットか32ビットかを指定するもので、それによってレジスタが決まるんだよ。
命令によってはオペコードの中にwフィールドがないものもあり、その場合はregフィールドの値だけでレジスタが決まるんだよ。
まあ、他にもややこしいことはいろいろあるよ…



178 :デフォルトの名無しさん:03/06/22 06:58
MODRMの説明
MODRMとはmod(上位6,7ビット)とR/M(下位0,1,2ビット)の名前を結合。
MODRM = mod + R/M
R/Mはmodビットの状態(11bのときはレジスタ)によってレジスタオペランド(R)、
メモリオペランド(M)の両方を指定できるという意味からR/Mらしい。
真中の3ビットは、レジスタオペランドの指定やオペコード拡張用
(lgdtやlidtみたいな特殊なもの)に使われます。

mod(2bit),真中(3bit),R/M(3bit)

7 6 5 4 3 2 1 0
mod  真中   R/M

というもの

179 :デフォルトの名無しさん:03/06/22 06:59
まず最初に表現したい命令ありき。そのなかで必要となるオペランドの
有無、種類によってバイト長も変わってくる。

1.オペランド数がゼロの場合は1バイト命令
8bitをフルに使って命令を表現

2.オペランド数が1の場合も1バイト命令
5bitで命令を表現し、残りの3bitでレジスタを指定する。
7     3 2   0
オペコード  レジスタ
という形

3.オペランド数が2つ(レジスタ、メモリ)の場合は2バイト命令
1バイト目は8bitでオペコードを表現
2バイト目はmodは{00b,01b,10b}のパターン
R/Mはメモリオペランド
真中はレジスタ

4.オペランド数が2つ(レジスタ、レジスタ)の場合は2バイト命令
1バイト目は8bitでオペコードを表現
2バイト目はmodは11bのパターン
R/M、真中でレジスタ二つを指定

という基本的四つの形式。
真中3ビットを特殊命令に使うケースはここでは省略してます。

180 :デフォルトの名無しさん:03/06/22 07:30
MODRMにおけるレジスタ指定のための3bitのパターンをここで暗記。

汎用レジスタを指定する表現
    32bit  16bit  8bit
000   EAX   AX   AL
001   ECX   CX   CL
010   EDX   DX   DL
011   EBX   BX   BL
100   ESP   SP   AH
101   EBP   BP   CH
110   ESI   SI   DH
111   EDI   DI   BH

セグメントレジスタを指定する表現
000   ES
001   CS
010   SS
011   DS
100   FS
101   GS
110   (予約)
111   (予約)

181 :デフォルトの名無しさん:03/06/22 07:37
レジスタを表現する3bitの具体的値ひとつにしてもそれだけでは
4通りの意味に読み取れる(000bにしてもEAX,AX,AL,ES)。
それを判別するのはオペコードの種類によって異なるということ。

一般的にはMODRMが必要になる形式はオペランドが二つという命令。
先頭の1byteを見て、オペランド数がいくつなのかをまず連想すれば
速く読めるようになるかな。1byte目が0fなら2バイト命令ということで
MODRMは3バイト目となるのも大事か。

MODRMは上位2bitを見てレジスタ―メモリなのかレジスタ―レジスタの
どちらのパターンなのか判別。16進数で言えば、MODRMが"c0"より大きい値のときは
レジスタ―レジスタというパターン。それ以下のときはレジスタ―メモリ
という形式となる。
そしてレジスタは上の一覧の通り、種類はオペコード次第。

>>177
お待ちしておりました。

182 :デフォルトの名無しさん:03/06/22 07:39
>>177と178〜は同一人物か…?
プレフィクス(0〜4)+オペコード(1〜2)+(MODRM+SIB)(0〜2)+
  ディスプレースメント(0〜4)+即値データ(0〜4)
プレフィクスとは、LOCK、REP、REPNE
オペランド&アドレスの16or32のサイズ逆転に、セグメントオーバーライド関連
オペコードは、そのまんま命令で、
MODRM(SIB)は、>>178以降で、説明してるようだが、本当に分かってるのだろうか…

183 :182:03/06/22 07:44
別人だったのね…

184 :名無し@沢村:03/06/22 10:41
>>180
正しくは、
wフィールドが存在しない命令では、
    32bit  16bit  
000   EAX   AX   
001   ECX   CX   
010   EDX   DX   
011   EBX   BX   
100   ESP   SP   
101   EBP   BP   
110   ESI   SI   
111   EDI   DI   
となり、
wフィールドが存在する命令では、
    32bit  16bit  両方
    (w=1)  (W=1) (W=0)
000   EAX   AX   AL
001   ECX   CX   CL
010   EDX   DX   DL
011   EBX   BX   BL
100   ESP   SP   AH
101   EBP   BP   CH
110   ESI   SI   DH
111   EDI   DI   BH
となる


185 :デフォルトの名無しさん:03/06/23 05:08
昨日書いたものはレジスタオペランドの表現方法。
今日は[命令・レジスタ・メモリ]という命令文における、
メモリアドレスの表現形式についてまとめてみる。

レジスタオペランド指定のその単純な表現と違い、
メモリオペランドは少し複雑になっている。
mod=00,{R/M,base}=101みたいな特殊なケースもあるし。
自分の中で整理するまでは時間がかかりそうなので、
ここでとりあえず理解している範囲をまとめてみる。

メモリオペランド指定にはMODRMが1byteのものと2byteのものの
2種類に分けられる。2byteMODRMでないと表現できないメモリオペランドとは
・インデックスレジスタを使うもの
・ベースアドレスにESP(つまり100)を指定するもの
 (R/Mにおける100がMODRM自身の2byte拡張に割り当てられているため)
の二通りのケースが考えられる。この二つは1byteのMODRMでは表現できない。

指定されるメモリのアドレス表現は
セグメント―ベースアドレス―インデックスアドレス(+スケールファンクタ)
―ディスプレースメント の4部分で指定する。
この4っつの使用は任意である。ただしセグメント指定がないときはデフォルト
セグメントのDSを用いるという意味になるし、ベースアドレスが無い時は
ディスプレースメントが必要不可欠となる。

メモリ中のアドレス指定において、セグメントレジスタは独立しているからいいとして
ベース、インデックス、ディスプレースメントの三つの組み合わせは、
例外があったりして少し複雑である。全ての組み合わせを考慮して、
そのビットパターンを網羅することもいいかもしれないが、具体的バイナリを
読めるようになることに目的をおいているので、あまり厳密には考えない。

186 :デフォルトの名無しさん:03/06/23 05:31
1.セグメント
デフォルトではDSセグメントを使うが、その他のセグメントを参照する場合は
命令プリフィックスで指定する。(プロテクトモードでは、セグメントレジスタに
指定されているのは当然、セグメントディスクリプタへのインデックス値であって
アドレスではない。)

2.ベースアドレス
セグメント内におけるベースアドレス。1byteMODRMにおいてはR/Mにおいて32bitの
レジスタのみを使える。2byteMODRMの場合は2byte目のbase領域(0-2bit)において
32bitのレジスタを指定する。

3.インデックス
これを使うときはMODRMは2byteになる。インデックスレジスタを使わないときは
スケールファンクタは00になっていなければならない。
スケールファンクタ(2bit)の値の意味するところは
00 x1
01 x2
10 x4
11 x8
というもの

4.ディスプレースメント
MODRMが1byte、2byteに関係なくmodの値が
・00はディスプレースメントなし
・01は8bitのディスプレースメントあり
・10は32bitのディスプレースメントあり
という意味。

187 :デフォルトの名無しさん:03/06/23 05:35
2byteMODRMについての詳しい図はインテルのマニュアル中巻の図2-1にあります。
というか自分が読んでいる古い386の本と用語が少し代わっています。
2byteのMODRMなどというものはなく、MODRM(1byte)とSIDというらしいです。
意味するところはSIDは2byte目のMODRMと上で言われているものと変わりません。
スケールファンクタとは単にスケールというらしい。
SIDとは上にも書いたように、メモリオペランド表現専用です。

>>沢村様
wフィールドとはなんでしょう?オペコードのどこかのビットということに
なるのかな?

188 :デフォルトの名無しさん:03/06/23 07:15
ベースレジスタの指定には10種類の値を指定できなくてはいけない。
8(汎用レジスタ)+SID有り+ベースレジスタなし=10種類
そこでいつくかの特殊ケースを設定されている。

・ESPを指定するはずの100を2byteMODRM有りの意味に使う
・mod=00, {R/M,base}は常識的にはディプレースメントなし
 +ベースレジスタはEBP(101)という意味になるが、
 これを特殊ケースとして、
 「ベースレジスタ無し+32bitディスプレースメントあり」の意味に使う
 これはディスプレースメント無しのモードではEBPをベースレジスタとして
 使えないという意味になる。
 代用としてはmod=01,R/M=101,ディスプレースメントは0を設定する。

というもの

インデックスフィールドに関する例外としては
・100のときはESPをインデックスレジスタとして使う、という意味ではなく、
インデックスレジスタ無しという意味になります。このときスケールは00でなければ
ならない。

即値フィールドはディスプレースメントの後と決まっている。


これで、あとはオペコードを暗記するだけでバイナリが読める、はず。

189 :デフォルトの名無しさん:03/06/23 08:17
s/ファンクタ/ファクタ/

自分で書いてていうのもなんだけど、内容めちゃくちゃだな。
インテルのPDFにMODRM,SIDのビットパターン一覧が載ってるから
それみて覚えるのが一番効率がいいことは確か、か。

190 :mathmania ◆uvIGneQQBs :03/06/23 16:59
DOSの機械語(マシン語)と、UNIXの機械語(マシン語)は違うものですか?

191 :デフォルトの名無しさん:03/06/23 17:10
DOSとUNIX でマシンが違うならね

192 :デフォルトの名無しさん:03/06/23 17:12
あ、DOSとUNIXか、なら一般的には違うものだな。
もし同じCPUであっても DOS は16bitコード UNIXは32bitコードだろうからね

193 :デフォルトの名無しさん:03/06/24 21:28
01010101001001010101010101111111111010101001101

194 :デフォルトの名無しさん:03/06/25 02:43
>>192
基本的に16bitでも32bitでもCPUが同じなら機械語は同じだろ
ただ、それを解釈するCPU、もしくはCPUのモード(方言)が違うだけ

195 :デフォルトの名無しさん:03/06/25 13:09
>>194
まあ基本的にはそうなんだが、
x86の場合はデータサイズが変わっちゃうからねえ。
どっちのモードで動いているか把握しておかないと悲惨な事になるぞ。



196 :デフォルトの名無しさん:03/07/18 21:36
よい2進数のエディタはないですか?

197 :デフォルトの名無しさん:03/07/18 21:40
>>196
メモ帳の二進数モード

198 :デフォルトの名無しさん:03/07/19 00:21
>>196
stirling

199 :デフォルトの名無しさん:03/07/19 00:24
七輪グゥ?

200 :山崎 渉:03/08/02 02:33
(^^)

201 :デフォルトの名無しさん:03/08/06 18:10
int mc91(int n){
if (n>100) return n-10;
else return mc91(mc91(n+1));
}

上のCプログラムを出来ればアセンブリでおながいします m(_ _)m

202 :デフォルトの名無しさん:03/08/06 20:56
>>201
しょーがねーな
_mc91:
 cmp.l #100,er0
 ble 1f
 sub.l #10,er0
 rts
1:
 inc.l #1,er0
 jsr @_mc91
 jsr @_mc91
 rts

展開するのはめんどいので素直に再帰。


203 :201:03/08/06 21:19
>>202
有難う御座います。

しかしプログラム間違えてました申し訳無いです

else return mc91(mc91(n+11));

でした。しかも、MIPSアセンブリ言語でした。

因にプログラムの動きは
n>100の時は1回だけ-10して終了。
n=<100の時はn=91になるまで計算を繰り返す。
でつ

204 :山崎 渉:03/08/15 17:05
    (⌒V⌒)
   │ ^ ^ │<これからも僕を応援して下さいね(^^)。
  ⊂|    |つ
   (_)(_)                      山崎パン

48 KB
■ このスレッドは過去ログ倉庫に格納されています

★スマホ版★ 掲示板に戻る 全部 前100 次100 最新50

read.cgi ver 05.04.00 2017/10/04 Walang Kapalit ★
FOX ★ DSO(Dynamic Shared Object)