copy and destroy

catch and eat

日記の練習です。

scrapbox.io

CODv2 (デイビッド・パターソン & ジョン・ヘネシー『コンピュータの構成と設計』第2版)、第3章 「命令 : マシンの言葉」

「 3.5 条件判定用の命令」が if 文、 if-then-else 文、 while 文、そして switch 文の( MIPS の)アセンブリ言語への(手作業での)コンパイルで、やっとこれが終わって、次は「3.6 コンピュータ・ハードウェア内での手続きのサポート」で、

ここでいう手続きは、「手続き」ないし「サブルーチン」って言っているので、たぶん関数、というかプログラムの部分?本体?(つまりプログラムとは手続きの集合のこと?)のことで、いきなりプログラム・カウンタとかスタック・ポインタとか出てきた。

いよいよヤバくなってきた。身の安全が確保できるギリギリなスピード、振り落とされる寸前な感じ。


そもそもは、 C の入門書でお約束にポインタ変数に嵌まって、

copyanddestroy.hatenablog.com

こんなふうにわかっていないけど、わかったような気になったところで、

ポインタから始めちゃったからだけどC言語は変数をメモリのどこにどういった形で(大きさで)置くのか、どう操作するのか、っていうものに見えてて、これは反対にコンピュータの中に入っていくイメージがする(適当ーーー)。

https://copyanddestroy.hatenablog.com/entry/2025/04/15/110527

なんてことを言っていて、で、

あれ?だとすれば、変数以外のものだって、ましてやプログラム本体だって、メモリの上に置かれているのでは?それらはいったいなにがどのように?

というふうに気がついてしまったのが、ことの発端だったので、いよいよ核心部分に迫っている。

powered by hatena blog.
the nikki system for lifelogging junkies.

all posts © their original owners.
writing is reusable solely under the by creative commons license.