アセンブラでシステムコールを呼び出したいのですが、
Linuxとかだとシステムコールの一覧みたいのが載ってるのですが、
Windowsのシステムコールの一覧みたいのが見つかりません。

一覧が載っているようなサイトってありませんか??
とりあえずLinuxの11番(C言語で言うexecv関数)みたいのが使いたいのですが。。。

このQ&Aに関連する最新のQ&A

A 回答 (2件)

MS-DOSシステム割り込みの一覧です。



参考までに、どうぞ。

Ralf Brown's Files
http://www.cs.cmu.edu/afs/cs/user/ralf/pub/WWW/f …

Ralf Brown's Interrupt List
http://www.delorie.com/djgpp/doc/rbinter/
    • good
    • 0

Windowsではシステムコールを直接呼び出すことはしません (ドライバ系でRing-0プログラムなら別かもしれませんが)。



で,Windowsで使うAPIの一覧を調べたいのであれば,MSDNに載っています。
例えば,Win32サブシステムのAPIであれば,
http://msdn.microsoft.com/en-us/library/aa139672 …
から探すことができますし,DirectXのAPIであれば,
http://msdn.microsoft.com/en-us/library/cc440757 …
から探すことができます。
    • good
    • 0

このQ&Aに関連する人気のQ&A

お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!

このQ&Aを見た人が検索しているワード

このQ&Aと関連する良く見られている質問

Qウィンドウズの起動音を変更してみましたが、ゴミ箱だけ変更できません。

ウィンドウズの起動音を変更してみましたが、ゴミ箱だけ変更できません。

他の起動音・終了音・エラー音などすべてうまくいきましたので、手順は間違ってないと思いますが、
ゴミ箱の効果音のみいくらやっても変更できません。
どうすればよいのでしょうか?

Aベストアンサー

>ゴミ箱の音を設定して、適応→OKを押せばよいはずで、その通りにするものの
実際のゴミ箱の音はそのままです。
もちろん設定したはずのファイルも、設定されておらず元のままの状態です。

レジストリがおかしいようですね。
レジストリエディタでrecycle.wavの箇所を書き換える手はありますが、結果は未確認です。OSを入れ直した方が無難と思います。

Qアセンブラ、ファンクションコールの使い方

入力した一文字を改行して表示させるものを作ってます。
以下のものを書いてみまして、
一文字読み取って改行はしますが表示されません。
アドバイス頂けますでしょうか?

環境は MASM 32 です。

name double
.model small
.stack 100
.data
prompt db 0ah,0dh,"? $"
.code
start:
movax, @data
movds, ax
lea dx, prompt

movah, 9;output string
int21h

movah, 1;get keyboard input and store into al
int21h

mov dl, 0ah
mov ah, 2
int 21h

mov dl, 0dh
mov ah, 2
int 21h

mov dl, al
movah, 2 ;output char from dl
int 21h

movax, 4c00h;exit
int 21h

endstart

入力した一文字を改行して表示させるものを作ってます。
以下のものを書いてみまして、
一文字読み取って改行はしますが表示されません。
アドバイス頂けますでしょうか?

環境は MASM 32 です。

name double
.model small
.stack 100
.data
prompt db 0ah,0dh,"? $"
.code
start:
movax, @data
movds, ax
lea dx, prompt

movah, 9;output string
int21h

movah, 1;get keyboard input and store into al
int21h

mov dl, 0ah
mov ah, 2
int 21h

mov dl, 0dh
m...続きを読む

Aベストアンサー

文字出力(ah=2)のファンクションコールは AXレジスタを破壊するようです

ah=1で読み込んでから 別の破壊されないレジスタにALを保存するか
スタックにプッシュしておいて改行を行い
保存したレジスタまたはスタックからデータを取り出して表示させましょう

mov ah, 2
int 21H
# ここでスタックにプッシュ
push ax
mov ah,2
mov dl,0dh
int 21H
mov ah,2
mov dl,0a
int 21H
# スタックからポップ
pop ax
mov ah,2
mov dl,al
int 21H

といった具合でしょう

QWindowsの起動音と処理速度

素朴な疑問なのですが、
起動音を長めのメロディに設定した場合、
流れている間の起動処理はどうなっているのでしょう?
起動処理を続けながら起動音を流すのでしょうか?
起動音が鳴り終えるまで起動処理は保留でしょうか?

Aベストアンサー

音が流れている間ももちろん起動処理をしています。起動音程度なら負担もたいしたかからないので長くても問題ありません。

QLinuxでネットワークプログラムをしてみたい

タイトルのとおりですが、UNIXの入門書でも大丈夫でしょうか。

Aベストアンサー

正攻法で行きますと C言語がかなり使いこなせる事。
TCP/IP 等ネットワークについてのかなりの知識を持っている事。
が前提条件になりますので入門レベルでは無理です。

Borland 社の Kylix(Pro 版以上)などの開発環境を利用しますとネットワーク関連のコンポーネントが利用できるので自由度は減りますがかなり敷居が低くなります。ただしやはり TCP/IP 等ネットワークについてのそれなりの知識が必要です。これも入門レベルではしんどいです。

他には「Linux のネットワークプログラム入門」みたいなタイトルの本でサンプルプログラムが色々と載っている本はありました。プログラムを実際に試してみる事はできますが本当に理解するにはやはりかなりのレベルが問われます。ただこんな本を足がかりに始めるのはいいかもしれません。

以前立ち読みしただけなので具体的な本のタイトルはわかりません。すみません。

質問の趣旨とずれていましたらごめんなさい。

QXPの起動音

XPの起動音に飽きてしまって、現在Windows98のデフォルトの起動音にしたいのですが、どうすれば設定できるでしょうか。98のデフォルトの起動音は持っていません。

Aベストアンサー

下記のサイトに歴代Windows起動音が紹介されています。

http://www.winhistory.de/more/winstart/winstart.htm

起動時のサウンドの設定方法は下記に詳しく紹介されています。

http://www.microsoft.com/japan/users/tips/windows/071.mspx

Qシステムコールを使わずに画面に文字を表示する方法

アセンブリの本を読むと、画面に文字を表示する際にはシステムコールを利用しています。

通常はシステムコールを利用すれば問題ないのですが、ブラックボックス的に使うのが嫌なので、一度は内部の動作を理解したいと考えています。
システムコールを使わずに画面に表示するにはアセンブリでどう記述したらよいのでしょうか?
または、システムコールではどのような処理をしているのでしょうか?
ディスプレイのデバイスドライバが関わっていると思うのですが、そうであるなら、デバイスドライバではどのような処理がされているのか知りたいのです。

OS、処理系はなんでも構いません。
この本を読めばいいよ、という情報でも構いませんのでご教示ください。

Aベストアンサー

>ということは、素人が細かい部分まで独学で理解するのは難しいのかも知れませんね。

最近のビデオカードのドライバは、メーカー内のハードに精通した担当者しか書けないみたいですね。まぁ、ハードの詳細仕様が公開されていないので書けって言われても難しいですが。
http://opentechpress.jp/developer/07/09/04/0117255.shtml
Linux系オープンソースでチャレンジは行われているみたいですが、完成したドライバまでたどり着いたプロジェクトは無いようです。
上記ページからたどって、R300の未完成のオープンソースのドライバを見てみましたが、大量のソースコードで読む気もおきません。
興味があったらたどってみてください。

Q起動音の変更

こんにちは!
OS(XP)の起動音をOS(98)の起動音に変えたいのですが
どうすれば出来ますか?

Aベストアンサー

もし98の起動音が手元にない場合は下記のサイトから入手して下さい。
ダウンロード方法はWindows98(SE)と書いているところのフォルダのマークがありますのでそこをクリックしてファイルを適当な場所に保存してください。
ダウンロードしたファイルを解凍してください。
ファイルはRAR形式になっておりますのでLhaplusなどを使って解凍して下さい。
起動音の変更方法は、他の方々の回答をご覧下さい。

参考URL:http://www.winhistory.de/more/winstart/winstart.htm

Qシステムコールをフックするという意味

皆さん、こんにちは。
プログラミングを勉強中の大学生です。

タイトルどおりですが、システムコールをフックするとはどういった意味でしょうか?
別の質問をしたときに回答してくれた人が言っていました。
その人に聞く前に締め切ってしまい、追加の質問ができなくなってしまいました。
「フックする」というのがわかっていません。システムコールもよくわかりません。
WEBで検索しても持っている本を調べてもわかりませんでした。
具体例を交えて説明していただけるとうれしいです。

よろしくお願いします。

Aベストアンサー

参考URLの説明が分かりやすいと思います。

参考URL:http://www.atmarkit.co.jp/fsecurity/rensai/rootkit03/rootkit02.html

QiMacの起動音を消したい

iMac 400DVでOS-X10.3.8を使用中。
起動音のジャーンという音が消えません、どうしても。
内蔵電池も交換、PRAMのクリアもやってみたし、NVRAMのクリアまでやってみましたが、効果なし。
時計もズレていましたが、「時計」の環境設定はきちんと保存されて正常通りになりました。
「起動音」の環境設定が効かないんですよ、「消音」に設定しても。
起動音以外の音は、きちんと消音になるんですが。
StartupSound.prefPane
http://www5e.biglobe.ne.jp/~arcana/StartupSound/
という、起動音の設定に特化したソフトまで試してみましたが、効果なし。
手だてを教えてもらえると助かります。

Aベストアンサー

やはり「物理的」に消すのがいちばん確実です。
私もイヤホンジャックで塞いでいましたが
音が欲しい時にいちいち後ろに回って抜き差しするのが面倒でしたので
イヤホンジャックの付いた小さなスピーカーを買ってきて
それを差し込んであります。探せば100均でも見つかります。
スピーカーにON・OFFのスイッチが付いたものであれば、
それで手元で音を出したり消したり出来ますから便利です。

QCOMETII上で動作するアセンブラ言語によるプログラム

このまえ投稿したのですがやり方が悪く削除されてしまいました。

答えてくださった方々、申し訳ありません。

学校で下に示すプログラムを1行づつ解析し行っている処理を見出せというものでした。

EX307 START
LD GR0,A
LEA GR1,0
LOOP SUB GR0,B
JMI ENDDV
LEA GR1,1,GRI
JMP LOOP
ENDDV ADD GR0,B
ST GR1,ANS
ST GR0,B
EXIT
A DC 50
B DC 8
ANS DC 1
REM DC 1
END

2行目のAの50をロードしてGR0に入るって言うのがわかりましたが、LEAやらSUB、最初のEX307の意味もわかりません。

よろしくお願いします。

Aベストアンサー

この前回答したzwiです。
どんな答えをしたか忘れたのですが、もう一度書いてみます。
COMETIIは詳しくありませんが、アセンブラなら色んなCPUを渡り歩いているので大体わかります。

>2行目のAの50をロードしてGR0に入るって言うのがわかりましたが、LEAやらSUB、最初のEX307の意味もわかりません。
LEAやSUBはCOMET(CASL)の古い命令みたいですね。いくつか間違いがあります。
LEA→LAD 実行アドレスをロードする(あるいは値をロードする)
SUB→SUBA 符号付引き算をする命令。
ADD→ADDA 符号付足し算をする命令。
EXIT→RET 呼び出しもとに帰ります。メインなら終了です。
と読み替えてください。
COMETとCOMETIIの対応表です。googleのキャッシュです。
http://72.14.235.104/search?q=cache:0sgq6upY1kAJ:www.ced.is.utsunomiya-u.ac.jp/lecture/2006/jikken1/casl/spec.htm+%EF%BC%A3%EF%BC%A1%EF%BC%B3%EF%BC%ACII%E3%80%80SUB&hl=ja&ct=clnk&cd=1&gl=jp&lr=lang_ja

EX307は単なるラベルで,START擬似命令でここからプログラムを開始しますよ~って意味です。
http://www.officedaytime.com/dcasl2/pguide/chapter1f.html

[参考サイト]
もう一度入門サイトを紹介しておきます。
http://itpro.nikkeibp.co.jp/article/COLUMN/20070404/267378/?ST=techskill
シミュレータで動かして実際に確認してみてください。
http://www.vector.co.jp/soft/win95/prog/se184950.html

この前回答したzwiです。
どんな答えをしたか忘れたのですが、もう一度書いてみます。
COMETIIは詳しくありませんが、アセンブラなら色んなCPUを渡り歩いているので大体わかります。

>2行目のAの50をロードしてGR0に入るって言うのがわかりましたが、LEAやらSUB、最初のEX307の意味もわかりません。
LEAやSUBはCOMET(CASL)の古い命令みたいですね。いくつか間違いがあります。
LEA→LAD 実行アドレスをロードする(あるいは値をロードする)
SUB→SUBA 符号付引き算をする命令。
...続きを読む


人気Q&Aランキング

おすすめ情報