• ベストアンサー

アセンブラが実行しません

パソコン初心者です。 これからアセンブリ言語を学ぼうと思っています。 アセンブラとしてNASMをDドライブにダウンロードしました。 環境変数の設定でPATHにNASMをダウンロードしたディレクトリを追加しました。 試しに、アセンブリの簡単なプログラムを実行しようとしましたが、 「内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません」と表示されます。 これはどういうことでしょうか? どうすれば、アセンブラが実行できるのか教えてください。 お願いします。

質問者が選んだベストアンサー

  • ベストアンサー
noname#39970
noname#39970
回答No.2

nasmは 翻訳しかしない nasmによって 実行ファイルが生成できる 実行できるのは その生成されたファイル

kgztabq
質問者

補足

コマンドプロンプトでアセンブリ言語でプログラムを書くと、それがNASMによって実行ファイルとして生成され、そのファイルをどこかに保存して、それをコマンドプロンプトで読み出して実行するということですか?

その他の回答 (2)

noname#39970
noname#39970
回答No.3

>そのファイルをどこかに保存して この辺りが若干違うけど大筋でそんな感じ perlやphpのように実行文が書かれたファイルを渡すとそれを翻訳しながら実行するのと「違う」からどちらかというと「コンパイラ」が存在的に近い。 http://ja.wikipedia.org/wiki/Netwide_Assembler http://ikda.net/fswiki/wiki.cgi?page=%A1%D8%C6%C8%BD%AC%A5%A2%A5%BB%A5%F3%A5%D6%A5%E9%A1%D9%A4%C7%A4%AA%CA%D9%B6%AF

kgztabq
質問者

お礼

ご回答ありがとうございました。

  • hitunion
  • ベストアンサー率16% (12/74)
回答No.1

OSは? MS-DOSと仮定して・・・、 作ったプログラムをアセンブル・リンクしましたか?

kgztabq
質問者

補足

OSはWindows XPです。 質問に質問で返して申し訳ありませんが、アセンブル・リンクとはどういった操作ですか?

関連するQ&A

  • アセンブラを実行したいのですが

    パソコン初心者です。 Windows XPにアセンブラ「NASM」をダウンロードしました。 コマンドプロンプトで簡単なプログラムを実行しようと思います。 以下がプログラムです。 ; dispchar.asm mov ah,02 mov dl,31h int 21h mov ah,4ch mov al,0 int 21h コマンドプロンプトに「; dispchar.asm」と入力すると、内部コマンド、外部コマンドまたは操作可能なファイル、バッチファイルとして認識されていません」と出ます。 同様に、「mov ah,02」から入力しても同様のコメントが返ってきます。 プログラムを実行するにはどうすればよいでしょうか?

  • アセンブラ

    nasmは持っているのですが、nasmでコンパイルしたプログラムはcmd.exeから実行してもできません(結果がうまく表示されません)。 わざわざCOMMAND.comから実行しなくてはいけないのですがとても面倒です。。。 そこでcmd.exeで実行できるプログラム(exeファイル)を作れるアセンブラを探しています。 知っている人がいたら教えてください。 それから、よくわからないのですが axレジスタじゃなくてeaxレジスタを使うプログラムってなんていうんですか??

  • nasmをインストールしたけど起動しない

    アセンブリ言語を勉強しようとフリーのアセンブラNASMをダウンロードしました。しかし、プログラムファイル(NASMW.exe)を起動しようとすると画面が一瞬出るのですがすぐ消えてしまいます。 どうすれば正常にNASMが起動できるのか教えてください。

  • javacの実行ができません

    javacの実行ができません。javacコマンドを打つと 'javac' は、内部コマンドまたは外部コマンド、 操作可能なプログラムまたはバッチ ファイルとして認識されていません。 と出ます。ちなみにCLASSPATHはありませんでした。PATHも通したのですがどうすればいいかわかりません。 Javaフォルダにはjdk1.6.0_13とjre6があります。 よろしくお願いします。 これからJavaを学ぶのでぜんぜんわかりません。

    • ベストアンサー
    • Java
  • C#初心者です。

    はじめまして。C#初心者です。よろしくお願いいたします。 作った「.cs」ファイルをコマンドプロンプトで実行しようとしたのですができません。 Framework(v1.1)をダウンロードして、「csc.exe」があるディレクトリにパスを通したのですが、cscは内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません、と表示されます。どのようにしたら使えるようになるのでしょうか?わかる方いましたらよろしくお願いいたします。

  • コマンドラインからPHPを実行するには。(Windows)

    PHPスクリプトをコマンドライン上で実行しようと思い、 >php bookread.php と入力したところ、 >'cdc:\' は、内部コマンドまたは外部コマンド、 >操作可能なプログラムまたはバッチ ファイルとして認識されていません。 と表示されてしまいます。 おそらく環境変数の問題か、もしくは実行しようとしたディレクトリがいけないのかと思いますが、どうしたらよいのかわかりません。 Windowsで、OSはwinXP、また、phpはxamppで取得しました。 実行しようとしたファイルbookread.phpは c:\xampp\htdocs\_test というフォルダの中にあります。 どのディレクトリに移ってから行えばよいのか、もしくは環境変数にどう書き加えればよいのか、教えてください。 私が実行を試したディレクトリは、 c:\xampp\htdocs\_test> と c:\> です。 (ブラウザ上で他のPHPスクリプトを実行することは可能です。)

    • 締切済み
    • PHP
  • 最初のアセンブラ

    人間がハンドアセンブル際にアセンブリ言語と機械語の対応表を見比べて翻訳する作業を、コンピュータの黎明期に機械語で最初に作られたアセンブラはどのように行っていたのかということを教えて下さい。 プログラミング言語の歴史を考えてみると、(フォン・ノイマン型)コンピュータの黎明期では全てのプログラムは最初人間が直接真空管やディップスイッチのオン/オフを切り替えることで、機械語でプログラムを入力していたと思います。その後アセンブラが開発されたことで、人間はパンチカードやカセットテープなどを通してアセンブリ言語でプログラミングを行えるようになったと聞きました。 アセンブリ言語は機械語と1対1で結びついたもので、アセンブラはアセンブリ言語を機械語に翻訳するのだと言うことは分かります。しかし、パンチカードやカセットテープで入力したアセンブリ言語も、コンピュータにとっては根本的には0/1(スイッチのオン/オフ)という点では変わりはなく、最初のアセンブラはその0/1をどのようにして正しい機械語の0/1に変換することが出来たのでしょうか? 少し質問の意味が分かりにくいかもしれませんが、例えば MOV B, A //Bレジスタの内容をAレジスタに送る といったアセンブリ言語は、機械語では 01000000 に相当するかもしれません。しかしコンピュータがパンチカードを読み込んだ時点では 01010100 といった信号として入力されるとしたら、機械語で最初にアセンブラを作成した人はどのようにしてそれを適切な機械語(ここでは01000000)に翻訳出来たのでしょうか? 想像では最初に機械語で非常に超簡単なアセンブラの原型とも言えるプログラムを作って、それを元にした簡単なアセンブリ言語(の原型)でより高度なアセンブラを作る、といったことを繰り返していまのアセンブラが開発されていったと思いますが、では最初のアセンブラの原型とはメモリ上ではどのように実現されていたのか、ということが気になったので質問させていただきました。アセンブリ言語で実際にプログラムのイメージはこんな感じでは?ということを書いて下さっても構いません。 よろしくお願い致します。

  • 情報処理技術者試験センター・CASLIIシミュレータのアセンブラ

    独立行政法人情報処理推進機構・情報処理技術者試験センターによる、CASLIIシミュレータについての質問です。 インストールしましたが、使い方がどうしてもわからず、悩んでいます。 書いてあるとおり、readmeのpdfも、丹念に読み、自分なりに本でもサイトでも調べつくしましたが、どうしてもわかりません。 おそらく、簡単なところで突っかかっているのかもしれませんが、自分では解決できません。 お教えください。 必要なjavaなどはすべてインストールしました。コマンドプロンプトによるアセンブラということで、いろいろ試してみましたが、どうすればテストプログラムを試せるのかがわかりません。 もちろん、テストプログラムについて書かれた、ExplanatoryNote.txtもよく読みました。 アセンブラ言語は一般的にメモ帳、コマンドプロンプトで、プログラミングするようですが、どんな文をどこに入力すれば動くのでしょうか。バッチファイルについても調べましたが、どうすればよいのかわかりません。 とりあえずコマンドプロンプトに、ファイル名をいろいろ入力してみましたが、「内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません。」と出ます。 解決方法を教えてください。お願いいたします。

  • browstat を実行したい

    Windows ネットワークの状態を調べるコマンドに browstat というコマンドがあると聞いたのですが、Windows 7 でこれを実行すると 'browstat' は、内部コマンドまたは外部コマンドとして操作可能なプログラムまたはバッチファイルとして認識されていません。 というメッセージが表示されて実行できません。browstat を実行できるようにするにはどうしたらいいでしょうか。

  • jdkのPATHの設定について

    jdkをインストールしたのですけど、PATHの設定でまたつまづいています。本を読む限りでは、JDKをインストールしたディレクトリの中の「bin」ディレクトリの中に含まれています。 とのことでしたのでbinのフォルダの所でプロパティを開き場所をコピーしてシステム変数の編集で変数値の所に張り付けたのですけどこれで合っていますか?pathの設定をコマンドプロンプトを起動して任意のディレクトリ上で「java」とだけ入力してみると 、内部コマンドまたは外部コマンド、操作可能なプログラムまたはバッチファイルとして認識されていません。となります。この一連の手順で何か間違っている所あるいは抜けている所があればご教授お願いします。ウインドウズビスタです。JDK 6 Update 4 をダウンロードしました。

    • ベストアンサー
    • Java

専門家に質問してみよう