Goldensteps

個人ブログです 意義はないです カテゴリー「長文読み物」がオススメですよ

『EXAPUNKS』PDFマニュアル1冊目の簡易訳~13pまで

本エントリでは1冊目(赤い方)の13ページ目まで進行します。

◆RUNTIME ERRORS and how to EXPLOIT them

時にはEXAsは、許可されていないことをしようとします。これが起こると、EXAは自動的にホストによって終了されます。HALT命令を実行した場合と機能的に同じです。ほとんどのエラーは退屈で有用ではありませんが、知っておけばあなたは利点を活かせるものもあるでしょう。

退屈なものから始めましょう:

0で割る
コンピュータでは「ゼロで割る」ことはできません。数学の問題です。理由を理解することについてあまり心配する必要はありません。やらなければよいのです。

キーワードで計算する
加算、減算、乗算などの操作をキーワードで実行することはできません。計算は数値に制限されています。

無効なFレジスタアクセス
EXAがファイルを保持していないときにFレジスタを読み書きすると、エラーが発生して終了してしまいます。最初にファイルを拾うことを忘れないでください。

無効なハードウェアレジスタアクセス
最後のものに似ています。読み込みまたは書き込みを試みる前に、アクセスするハードウェアレジスタと同じホストにいることを確認してください。

あなたが進行するにつれ、コード化や修正をするときに、おそらくこれらのエラーの多くを見るでしょう。しかし、もっと面白いタイプのエラーについて話しましょう。

時には、あなたは作業しているホストの詳細をすべて知っていないことがあります。リンクが変更され、ファイルが消えることがあります。コードを実行し、失敗する可能性があるため、オペレーティング環境についてしか知ることのできないものがいくつかあります。 それらはあなたにとって厄介なものかもしれませんが、そうしたことに惑わされるのは大きなソフトウェア会社で働いている時だけにするべきです。(もし勤務中ならすみません。あなたの人生を変えることを考えます。)ここで重要なことは、仕事を終わらせることだけです。

ファイルアクセスが無効
特定のファイルを探していたとします。これを試みるEXAが終了したならば、ファイルが存在しないことを意味します。

無効なリンクトラバーサル
特定のリンクを探していたとします。これを試みるEXAが終了したならば、リンクが存在しないことを意味します…… パターンが分かるでしょうか?


まじめな話として、あなたがEXAエラーを出し、彼らがクラッシュしたり、死んでしまったりするのを恐れることはありません。彼らはあなたにとってかわいく見えるかもしれませんが、彼らの目的は生まれついて、計算し、繰り返し死ぬことです。あなたはあなたのプログラムでこれらを利用することができます。