Jul 8, 2001 (Sun) 21:57 - あせんぶら

#~~~~
# あー、Z80っぽいですねぇ。 とすると、PUSH/POP は 16ビットロード
# 命令ですので、 オペランドは16ビットのペアレジスタを指定します。

AFでペアでしたか.(^^;

Z80って,そこらへんがなんかあまり好きではなかったり.
x86も,386以前はインデックス指定時のレジスタの組み合わせの
制限が大きくてイマイチだし.
([bx+cx*2+500] とかの指定が出来ないし(^^;)

386になってからそこら辺は使いやすくなったカンジですが‥‥‥.

386で,構造化アセンブラ使ってゴリゴリコード書いてました.
で,スレッド自力で実装してみた後,システムコールが
リエントラントではないことに気づく罠.

% タイマ割り込みで駆動するやつ作ったのに‥‥‥(笑)

# もし UNIX系の OSのソースコードを読むチャンスがあったら、
# メモリ管理の一番下で使われてる関数 (sysbrk() とか) を
# 鑑賞して欲しいなぁ。 そこには牙を剥き出しにした C言語が
# 嬉々としてメモリと格闘する様が書かれております。

OS のコードは・・・(^^;
タスク切り替えあたりも複雑そうだし.
アセンブラは勉強して,どんなカンジでやってるのかの
想像はだいたいはつきますが,詳細知っても使い道なさそうなので(^^;

アセンブラの方は,PS2のVUあたりを勉強したいですねぇ.
Linuxキットに資料ついてくるらしいので,それが楽しみです.



2024年10月
29
0
30
0
01
0
02
0
03
0
04
0
05
0
06
0
07
0
08
0
09
0
10
0
11
0
12
0
13
0
14
0
15
0
16
0
17
0
18
0
19
0
20
0
21
0
22
0
23
0
24
0
25
0
26
0
27
0
28
0
29
0
30
0
31
0
01
0
02
0

TmmDiary / Copyright 2001 Ymirlink,Inc. & Mikage Sawatari
このアドレスにはメールを送らないで下さい.
Don't send mail to this address.
hina@mikage.to