• ベストアンサー

スクリプトとは?

スクリプトの意味に関して疑問に思った点があります。 http://e-words.jp/w/E382B9E382AFE383AAE38397E38388.html 上記サイトにて >プログラムはコンピュータの理解できる機械語に変換して実行されるが ここまでは理解できるのですが >そのプロセスを自動化して簡単に実行できるようにしたものをスクリプトという。 コンピュータが理解できるのは機械語だけであると認識しておりましたので、この「自動化」の意味が理解できません。 機械語に変換せず、どのようにコンピュータに理解させているのでしょうか。 プログラマとしての経験が浅いのでなるべくわかりやすく説明していただけると助かります。

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

  • ベストアンサー
  • DIooggooID
  • ベストアンサー率27% (1730/6405)
回答No.1

プログラム をコンピュータが理解できる 機械語 に変換(翻訳)することを、一般的に、 コンパイル と称します。  これに対して、スクリプト のような簡易プログラムでは、コンパイル といった、変換(翻訳)処理は行わず、 その代わりに インタプリタ という 同時通訳をするソフトウェアを使って、一文ずつ、機械語に変換しながら、コンピュータに作業をさせます。 簡易プログラムは、比較的とつきやすいですが、その代わり、一文ずつ機械語に変換するので、処理時間が遅くなる欠点があります。

ShimantoGa
質問者

お礼

調べたところ、インタプリタとコンパイラは対義語のようですね。 そうなりますと先の参考サイトで >機械語への変換作業を省略して とありますが。 機械語に変換するタイミングが実行前か、実行中かの違いですので説明内容が不正確ということにはならないのでしょうか。 変換作業を後回しにして、というのであればわかりますが。

その他の回答 (1)

回答No.2

「機械語への変換作業」と「機械語への変換」では意味合いが異なります。 [コンパイル型] ソースコード → コンパイル(機械語へ変換作業) → 実行 [スクリプト(インタプリタ型)] ソースコード → 実行 というイメージでの説明であれば、「機械語への変換作業を省略」という表現は間違っているとは言えません。 「機械語への変換を省略」となると誤植感が強まりますね。 # あくまで私の感想として。

ShimantoGa
質問者

お礼

なるほど、あくまで見方の問題のようですね。 いずれにせよどちらも変換作業が必要ということがわかりましたので疑問は解消できました。 有難うございます。

関連するQ&A

  • スクリプトとは?

    スクリプトがよく分かりません。 下記ページには、「プログラムはプログラマの書いたソースコード(設計図)をもとにコンピュータの理解できる機械語に変換して実行されるが、そのプロセスを自動化して簡単に実行できるようにしたものをスクリプトという」とあるのですが、「機械語に変換」はコンパイルのことですよね? コンパイルという1ステップが省略される、ということなのでしょうか?ただ、コンピュータに実行させる以上、コンパイルはされるのですよね? そのへん、よく分かりません。よろしくお願いします。 http://e-words.jp/w/E382B9E382AFE383AAE38397E38388.html

  • スクリプト

    webアプリ作成において、スクリプト言語が使う理由とは何でしょうか??機械語変換がなく、比較的簡単に作成出来るってくらいしか分からないので詳しく教えてもらえませんか?よろしくお願いします。

  • 群れのネットワーク

    『クラスタリング』による情報処理の際には、 野生生物達の群れが『無心』で獲物を刈る時の音頭取りと同じ様に、 『フラグ』とか『キャラクター』とかによる同期が取られているのでしょうか? http://e-words.jp/w/E382AFE383A9E382B9E382BFE383AAE383B3E382B0.html http://www.usj.co.jp/MHR/event/index.html

  • Perlスクリプトについて

    よく配布されている掲示板CGI等のPerlスクリプトの場合は、コンパイル(コンピュータ上で実行可能な形式に変換)とかできないのでしょうか?やっぱりC言語を勉強するしかないのかな?意味不明な質問でしたら申し訳ありません・・・。 今現在かなりスペックが低い自宅サーバ(Windowsサーバ)を利用していまして、少しでもサーバへの負荷を減らせることができればと試行錯誤しています。

    • ベストアンサー
    • Perl
  • このスクリプトの実行を中止しますか?

    昨日から、次のメッセージが起動の度に表示されます。 このスクリプトの実行を中止しますか? このページのスクリプトがinternet Explorer の実行速度を遅くしています。このスクリプトを 実行し続けると、コンピューターが反応しなくなる可能性があります。 パソコン初心者で、大変恐縮ですが、対処方法を御教授お願いします。 OSはXPで、internet Explorer8です。ホームページをmsnにしています。ヤフーの画面では表示されません。Fix it ソリューション で自動修復を実行しました。

  • シェルスクリプト

    よく回りの人が「シェルを叩く」と表現しているのですが 「シェルスクリプト」の中にJavaScriptは含まれているのでしょうか? とてもかけ離れてるイメージなのですが。 以下引用 複数の処理(コマンド)をまとめて行なうことのできるスクリプトである。スクリプトとは、機械語への変換作業を省略した簡易プログラムのことで、代表的なものにはPerlやVBScript、JavaScriptなどがある。また、シェルとは与えられた指示をOSの中核部分に伝えるソフトウェアのことである。

  • 適切なシェルスクリプトの実行方法について

    シェルスクリプト内でi18nの再読み込みをするために . /etc/sysconfig/i18n と記述するとシェルスクリプト終了後にi18nの内容が反映されていません。 シェルスクリプト自体は ./shell1.sh という形で実行しています。 質問1:このようになるのは「./shell1.sh」と実行したスクリプトは 新たに作成された子プロセスによって実行される為、スクリプトが終了し 親プロセスに戻っても親自身は再読み込みを行なっていないから、という認識で間違いないでしょうか。 質問2:この現象の回避策として「source shell1.sh」とsourceコマンドで シェルスクリプトを実行する方法を試してみました。 実際に上手くいったのですが、「set -e」を使っているとエラー時に ログアウトしてしまうなどの弊害もありました。 他に適切な回避策に問題はないでしょうか。 ご存知のかた、お手数ですがご解答のほど宜しくお願い致します。

  • スクリプトを実行するかどうか

    先日ブログ友人から連絡がありました。私のブログを閉じた後に意味の分からない文章が出ると。 その文章は「このスクリプトの実行を中止しますか? このページのスクリプトがInternetExplorerの実行速度を遅くしてます。スクリプトを実行し続けるとコンピューターが反応しなくなりま可能性があります」 です。友人に話を聞くと最近出始めたようですが、PCに詳しくないので原因がわかりません。ただ最近ブラウザGoogle chromeをインストールしました。その前はIntenet Explore8とMozilla Firefox3.6をインストールして使用してました。Google chromeをインストールする前は問題はなかったと思うのですが。ブラウザの相性の問題でしょうか?この文章が表示されないようにするにはどうすれば良いのでしょうか。宜しくお願いいたします。

  • クリップボードとメモ帳?

    クリップボードとメモ帳? http://www.vector.co.jp/soft/win95/util/se357410.html nammoji を入れました。 ダウンロードは一発で決まりました。有難うございました。 クリップボードが、スタートから検索しても出てきませんでした。代わりにメモ帳で試したら、ちゃんと動作をしました。 http://okwave.jp/qa/q53962.htmlも、見ました。 クリップボードの質問投稿欄を見たら、エクセル、ワードも出てくるし、私にはメモ帳とどう違うのかが、わかりません。ベクターで、足りないからダウンロードをする、というようなことも書かれていますし。 http://e-words.jp/w/E382AFE383AAE38383E38397E3839CE383BCE38389.html (クリップボードとは?)も見たら、余計分からなくなりました。メインメモリー上?1個しかないから、何個も使う場合はソフトを入れる?(@_@;)メモ帳とどう使い分けたらいいのでしょうか?エクセル、まだ触っていません。ワードはほんのちょっと触ってみただけです。これからやる予定です…。 どこから起動させるのかも教えてください。それから、ダウンロードして、取り入れなければいけないなら、簡単に使えるものも、アドバイス、よろしくお願い致します。

  • シェルスクリプトで実行したコマンドをタイムアウトさせる方法

    シェルスクリプト超初心者です。 ログファイルを『tail -f』で開き、その内容を一時的な テキストファイルにリダイレクトで書き出します。 その処理を、一定時間経過後に自動的に終了する。 といった内容のシェルスクリプトを作成したいと思っています。 しかし、「tail -f」を実行したプロセスを一定時間経過後に どういう風に終了させればよいのかよく分かりません。 実行したプロセスを一定時間経過後に終了させるような 方法が何かありませんか? ちなみに実行環境は、Solaris9です。 【コマンド例】 tail -f ./"ログファイル" > ./temp.txt かなり、初歩的な質問で申し訳ありませんが 宜しくお願いします。

専門家に質問してみよう