No.1ベストアンサー
- 回答日時:
x86の場合 コントロールレジスタCR0の ビット0(PEビット)のOn/Offで
プロテクトモード・リアルモードの切り替えが出来ます
; リアル -> プロテクト
.386p
_TEXT Segment byte public use16 ' CODE'
assume cs:_TEXT
public _RealToProto
_RealToProto proc near
push bp
mov bp, sp
cli
mov eax, cr0
or eax, 1
mov cr0, eax
jmp flush_q1
flush_q1:
pop bp;
ret
_RealToProto Endp
_TEXT ends
end
; プロテクト -> リアル
.386p
_TEXT Segment byte public use16 ' CODE'
assume cs:_TEXT
public _ProtoToReal
_ProtoToReal proc near
push bp
mov bp, sp
mov eax, cr0
and eax, 0fffffffeh
mov cr0, eax
jump flush_q2
flush_q2:
pop bp
ret
_ProtoToReal endp
_TEXT ends
end
といった具合です
上記のコードは単にモードを切り替えているだけです
このほかにもDS、SS、ESなどのレジスタ操作もしなくてはいけないと思います
486関連の入門書などを参照したほうが良いと思いますよ
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) QRコード作成マクロについて 3 2022/11/26 16:55
- Android(アンドロイド) スマホの新端末へのデータ移行について iPhoneの旧端末から新端末へのデータ移行はすごいですね。 1 2022/05/30 14:25
- その他(社会科学) 戦争や革命で迫害された人たちがカナダに移民したとの放送を見ました。もっと知りたいので情報を下さい。 2 2022/08/14 10:29
- Excel(エクセル) 【マクロ】ファイルを古い順に、1個ずつ移動する 1 2022/09/06 20:30
- Amazon ネットの知り合いの方にAmazonカードをいただきました。コードを入力するタイプだったのですが相手に 2 2022/10/31 20:07
- Visual Basic(VBA) Excel vbaについて知恵もしくは、コード教えて下さいm(__)m ① 表にあるデータをコピー、 2 2022/09/01 23:57
- その他(Microsoft Office) エクセル 表の移動 2 2023/04/05 20:29
- Excel(エクセル) マクロのコードを、少しでも削って短くしたい 3 2022/08/30 07:46
- Excel(エクセル) Excelのマクロについて教えてください。 4 2022/05/31 14:07
- その他(プログラミング・Web制作) python OpenPyXLを使って出力結果をエクセルに書き込み 2 2022/06/04 19:46
関連するカテゴリからQ&Aを探す
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
ライン数とステップ数の違いは?
-
アセンブラで割り算
-
バイナリの実行ファイルをgccを...
-
PICはアセンブラとC言語のどち...
-
制御系ってSTL必要なんですか?
-
【H8マイコン】HEWで埋め込みア...
-
アセンブラからC言語に変換する...
-
GNUSim8085でのアセンブラエラー
-
8086アセンブラで、メモリ間の...
-
アセンブラエディタ
-
PC-9801でマシン語を学習するに...
-
エクセルVBAのIf,Then 構...
-
0xffffとは?
-
PS3に搭載されている"Cell"は、...
-
符号無し整数xを右にnビット回転
-
8ビットのデータの、先頭ビット...
-
二元対称無記憶通信路を実現す...
-
SRAMとレジスタの違いは何でし...
-
PICでパルス数をカウントする方法
-
PICでパルス数をカウントし、カ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ライン数とステップ数の違いは?
-
アセンブラからC言語に変換する...
-
PICに書き込むプログラムや変数...
-
[C言語→アセンブリ言語]はどう...
-
実行ファイルからソースはみれる?
-
【H8マイコン】HEWで埋め込みア...
-
素数を求めるプログラム(アセン...
-
アセンブラエディタ
-
アセンブラ言語がわかりません。
-
アセンブラで割り算
-
MPLAB IDE v8.92アセンブラにつ...
-
PICはアセンブラとC言語のどち...
-
PICのアセンブラからC言語へ変...
-
アセンブラ言語で質問です。
-
アセンブラのLA
-
データコピー
-
void __cdeclなど_
-
バイナリの実行ファイルをgccを...
-
PDP-11のアセンブラ課題
-
PC-9801 MS-DOSでの実行ファイ...
おすすめ情報