Riverside Learning LABO(Skill/Idea/Code)

よりよいシステムのため工学系と人間系の学習下書きメモ

プログラムはなぜ動くのか(3)

プログラムはなぜ動くのか(3)
著者:矢沢久雄

ほんとなぜ動くんでしょうね、ラスト。
ハードウェア入出力:IN命令とOUT命令
IN レジスタ名,←ポート番号
OUTポート番号.←レジスタ
ポート番号=I/Oアドレス
IRQ(InterruptRequest)
割り込み番号・コントローラの存在
ポーリング
DMAチャネル(DirectMemoryAccess)
VRAM(VideoRAM)
GPU(GraficProcessingUnit)
コンピュータシミュレーション
擬似乱数の周期性
乱数の種に現在時刻
CPU無能
人工知能のよう振る舞うものなら作成
結局人工無能?。
なんのためのコンピュータ
道具か思考過程代行
確率を設定し癖を実現
パターンを入れることで戦術を実現
経験によって条件分岐させることでさらなる戦術を実現
C言語
1973AT&Tベル研究所のデニスリッチーらによって開発
アセンブリに匹敵する細かな処理(メモり操作・ビット操作)
変数と関数でソース構成
char,short,int(long),float,double
8,16,32,32,64
標準関数
宣言記述・・ヘッダーファイル
#include ヘッダーファイル
関数のプロトタイプ宣言
ローカルとグローバル
配列と繰り返し
ANSI規定32個のC言語キーワード
さまざまなソースに触れる
ひたすらコーディング&ビルド

教科書のようだが教科書の何倍も面白い。