[H8-ML(5574)] PCの値の取得
From: Uchida <uchan_pc@xxxxxxxxxxx>
Date: 2005年05月29日(日)11時01分58秒
こんにちは、uchanです。
H8/3048Fで、PC(プログラムカウンタ)の値をC言語プログラムから
参照するにはどうしたらいいのでしょうか。
PCのレジスタ自体のアドレスを探そうと思いましたが、
私が探した範囲では、何番地にPCが有るのか分かりませんでした。
PCが何番地に有るかは分からなくても良いですが、PCが指し示して
いるアドレスを取得したいと思っています。

なぜPCの指し示しているアドレスが欲しいかというと、ちょっとした
マルチタスクOSなるものを作ろうと思っているからです。
タスクが8個ほど有りまして、たとえばタスク0を実行中にタスク切り
替えの割り込み(0.1msのタイマ割り込みで強制的にタスクを切り替え
ようと思っています。)がかかったとき、PCの中身を変数に待避して
おき次のタスク処理に移ります。タスク7まで処理し終わり、タスク0
まで処理が戻ってきたとき、先ほど待避したアドレスをPCに戻して
処理を続行すれば、プリエンプティブマルチタスクが実現できるかな
と考えています。

よろしくお願いします。

スレッド概略
[表示中](起点)
 ├[5575(1)]
 ├[5576(2)]
 └[5577(3)]


投稿順に移動
[←前の記事へ(P)]
[→次の記事へ(N)]


リスト表示へ
[このスレッド(T)]
[本記事の前後(L)]