HP作り

 

総務省のHP

http://www.soumu.go.jp/main_sosiki/joho_tsusin/security/kiso/k01_home.htm

 

第1章

インターネットの仕組み インターネットは、世界中のネットワークが接続されたネットワークです。会社や学校などのネットワークが、それぞれの契約しているプロバイダによって、インターネットに接続されています。

 インターネットには、メールサーバーWebサーバーのように、クライアントから送られる要求に対して、決められた動作を行うように設定されたサーバーがあります。それらのサーバーが互いに連絡を取り合うことで、電子メールを送信したり、Webブラウザでホームページを見ることができるようになっているのです。

インターネットの仕組み

 インターネットで情報の行き先を管理するために利用されているのが、それぞれのコンピュータに割り振られているIPアドレスと呼ばれる数字です。このIPアドレスは、世界中で通用する住所のようなもので、下記の例のような数字の組み合わせによって表記されるのが一般的です。

 IPアドレスは、各国ごとに設置された機関がIPアドレスを利用者に配布しています。日本では社団法人日本ネットワークインフォメーションセンター(JPNIC)という組織が、このIPアドレスを管理しています。

IPアドレスの例

 通常、電子メールでは“mail.soumu.go.jp”、ホームページのアドレスでは“www.soumu.go.jp”のように指定します。これはドメイン名を使用した記述方法で、これらのアドレスを受け取ったDNSサーバーが、IPアドレスに自動的に変換することで行き先を見つける仕組みになっています。

 

第2章

ホームページの仕組み

 ホームページとは、Webサイトと呼ばれるインターネット上のひとまとまりのWebページのことです。元々は、Webサイトの入り口のページをホームページと呼んでいましたが、日本ではWebサイトと同じ意味で使われるようになりました。

 ホームページを閲覧する場合には、IE(Internet ExplorerNetscapeなどのWebブラウザURLアドレスを指定します。URLアドレスを指定すると、Webブラウザがインターネット上のWebサーバーを探して、目的のホームページを自分のコンピュータに表示します。

ホームページの仕組み

 URLアドレスは、「http://www.soumu.go.jp/joho_tsusin/joho_tsusin.html」のように指定します。「http」はホームページの閲覧に使用されるHTTPというプロトコルを表しています。「www.soumu.go.jp」はWebサーバーを指定しています。その後の「/joho_tsusin/joho_tsusin.html」がホームページの場所と名前を表しています。

 実際に、このようなURLアドレスで示されているWebサーバーに接続するためには、インターネット上にあるDNSサーバーを利用して、対象とするWebサーバーIPアドレスを取得するようになっています。

 ホームページの表示には、主にHTML形式のファイルが使用されます。このファイルの中には、画像や動画、音声などのマルチメディア情報を指定することができます。また、テキストやイラスト、図などにハイパーリンクを埋め込むことによって、ユーザーを別のWebページに誘導することができます。

 

第3章

DNSサービスの仕組みについて(中級編)

http://www.so-net.ne.jp/option/domain/study/about_dns.html

DNSサービスの仕組みについて

DNSサービスは、世界中のDNSサーバと呼ばれるサーバが通信を行ってサービスを提供しています。

たとえば、「www.so-net.ne.jp 202.213.251.233のグローバルIPアドレスです」という情報を dns.so-net.ne.jp というDNSサーバで管理したとします。
その際、「www.so-net.ne.jpはどこのグローバルIPアドレスですか?」という問い合わせを受けて検索を行っていき、最終的にdns.so-net.ne.jpが「202.213.251.233ですよ」という答えを返します。
この検索の仕組みがDNSサービスです。

では、どのように検索を行うのかを勉強していきましょう。

その前に、
ここで重要になるのが、「ドメインって何?」編で学習したドメインの構造とWhois情報です。
もう一度おさらいしましょう。

(1)ドメイン名の構造 ドメイン名の構造は「.(ドット)」の区切りで、後ろに行けば行くほど大きなグループで管理されています。
(2)Whois情報 インターネットの世界では、そのドメイン名を誰が管理しているのかを世界中の人が誰でも確認できるしくみがあります。

「ドメインって何?」編ではドメイン名そのものの構造についての説明としてあげましたがDNSサービスにおいても、同様の意味を持っています。
つまり、

(1)「.(ドット)」の区切りで後ろから順番に、管理しているDNSサーバを探していく。
 (2)Whois情報の中にドメイン名を管理しているDNSサーバを登録している。
(Whois(誰が?)という内容の中に「誰が登録した」と言う情報と「誰が管理している」という情報を持っています。)

http://www.so-net.ne.jp/option/domain/study/images/p05_img03_top_l.gif

http://www.so-net.ne.jp/option/domain/study/images/p05_img03_top_c.gif

http://www.so-net.ne.jp/option/domain/study/images/p05_img03_top_r.gif

http://www.so-net.ne.jp/option/domain/study/images/spacer.gif

http://www.so-net.ne.jp/option/domain/study/images/p05_img03.gif

パソコンからhttp://www.so-net.ne.jp/ というサイトを見る場合を例に挙げましょう。この際、パソコンは自身が参照しているDNSサーバを介してwww.so-net.ne.jpのグローバルIPアドレスを検索します。
ここでは、基本の説明として、http://www.so-net.ne.jp/をはじめて検索するという想定で説明します。

http://www.so-net.ne.jp/option/domain/study/images/p05_img03_list_1.gif

パソコンが参照しているDNSサーバは、www.so-net.ne.jpの後ろから順番に管理しているDNSサーバを検索していきます。
はじめに、「.(ルート)」と呼ばれるDNSサーバに「.jp」を管理しているDNSサーバがどこにあるのかを問い合わせます。

http://www.so-net.ne.jp/option/domain/study/images/p05_img03_list_2.gif

次に、「.jp」を管理しているDNSサーバに「.ne.jp」を管理しているDNSサーバがどこにあるのかを問い合わせます。*

http://www.so-net.ne.jp/option/domain/study/images/p05_img03_list_3.gif

次に、「.ne.jp」を管理しているDNSサーバに「so-net.ne.jp」を管理しているDNSサーバがどこにあるのかを問い合わせます。
このとき、「.ne.jp」を管理しているDNSサーバはWhois情報に登録されている情報を元に「so-net.ne.jp」を管理しているDNSサーバ(例で言うと、dns.so-net.ne.jp)を返します。*

http://www.so-net.ne.jp/option/domain/study/images/p05_img03_list_4.gif

ここではじめて、so-net.ne.jpを管理しているDNSサーバである、dns.so-net.ne.jpに問い合わせを行い、www.so-net.ne.jpのグローバルIPアドレスが(パソコンが参照しているDNSサーバに)返されます。

http://www.so-net.ne.jp/option/domain/study/images/spacer.gif

* ここでは、基本的な検索の仕組みとして説明しています。実際のJPRSDNSサーバは(2)(3)を同時に行います。

この検索を行うことで、パソコンはドメイン名のグローバルIPアドレスを確認し、そのアドレス(URL)にアクセスできるようになります。

http://www.so-net.ne.jp/option/domain/study/images/spacer.gif

http://www.so-net.ne.jp/option/domain/study/images/p05_img03_bottom_l.gif

http://www.so-net.ne.jp/option/domain/study/images/p05_img03_bottom_c.gif

http://www.so-net.ne.jp/option/domain/study/images/p05_img03_bottom_r.gif

http://www.so-net.ne.jp/option/domain/study/images/dif_top_l.gif

ちょっと難しい話

http://www.so-net.ne.jp/option/domain/study/images/dif_top_r.gif

http://www.so-net.ne.jp/option/domain/study/images/spacer.gif

ホームページにアクセスする度に、上記のような検索を毎回行っているのかというと 実際にはそうではありません。毎回毎回問い合わせをかけていたら時間も掛かるし、上位のDNSサーバの負荷が高くなってしまいます。
そこで、重要になるのが「キャッシュ」という機能です。
DNS
サーバは一度検索した内容を一定期間記憶しておきます。これを「キャッシュ」と言います。たとえば、一度www.so-net.ne.jpを検索すると、次にxxx.ne.jpを検索した場合、「.(ルート)」や「.jpDNSサーバ」に問い合わせをかけず、直接「.ne.jpDNSサーバ」に問い合わせを行います。
また、www.so-net.ne.jpを検索した後に、再度www.so-net.ne.jpを検索した場合、パソコンが参照しているDNSサーバは、DNSの問い合わせを行わずに「キャッシュから」前回の検索結果と同じ結果を返します。
この機能により、上位のDNSサーバの負荷を軽減しています。

 

第4章 まずはHTMLに触れよう!

http://www.oct.zaq.ne.jp/maimal/first.html

HTMLが何なのか、難しい説明はやめておきますが、ホームページが黒字の文章だけではつまらないでしょう?
HTMLは要するに、文字に色をつけたり大きさを変えたり、ホームページをよりキレイにしてくれるものなのです。

 

では、具体的には何をどうすればいいのでしょうか?
言葉の説明では分からないと思うので、実際にやってみましょう!

 

◎ホームページ作りに必要なもの◎

 

なんと、いるのはウインドウズのアクセサリの「メモ帳」だけです。
「メモ帳」の開き方は、
  1、画面左下のスタートメニューを開きます。
  2、「すべてのプログラム」(XP以外なら「プログラム」)にカーソルを合わせます。
  3、カーソルを合わせると、たくさん項目が表示されるので、「アクセサリ」にカーソルを移動します。
  4、「アクセサリ」の中に「メモ帳」があるのでクリックします。
「メモ帳」はどのウインドウズにも必ず最初から入っています

 

◎さっそく作ってみよう!◎

 

まだ何の説明もしていませんが、とにかく下の表の中身を「メモ帳」に写してみてください
コピー&貼り付け」を知っている人も、勉強のために自分で写してください。

 

↓とにかく何も考えずに写してみよう。

<HTML>
<HEAD>
<TITLE>
ホームページのタイトル</TITLE>
</HEAD>
<BODY>
<H1>
 ホームページのタイトル </H1>

ホームページに書きたいこと

</BODY>
</HTML>

 

写せましたか?「タイトル」と「書きたいこと」は自分で変更してもかまいません。

  1、写せたら保存しましょう。「メモ帳」の画面左上の「ファイル」を押し、「名前を付けて保存」を選びましょう。
  2、ファイル名は半角英数字(数字か英字)で書いて、後ろに .html を付けて下さい。( .htmlの . を忘れないで下さい)
  3、ファイルの種類は「すべてのファイル」を選んでください。

保存場所はどこでもかまいませんが、すぐにファイルを開くことができる場所に保存してください。
保存場所のおすすめは、「マイドキュメント」(My Document)です。


さっそく保存したものを使うので、そのまま開いておいてください。

◎解説します!◎

 

まず、さきほど保存したファイルを、「メモ帳」で開いているものとは別にもう一つ開いてみます。

インターネットエクスプローラ(又はネットスケープナビゲータ、その他のブラウザー※ページ最下部参照)を起動し、
左上の「ファイル」から「開く」を選択し、ファイルを開いてください。
インターネットにつながらなくても特に問題はありませんので、そのまま進めてください。

開いた2つのファイルがまったく異なっていることに気づきましたか?これがHTMLの効果なのです
「メモ帳」で開いている方は、ただの文字の集まりですが、普通にファイルを開くとずいぶんホームページっぽいでしょ?

ここで、<></>タグといいます。
タグは文字に飾りをつけるための呪文のようなものです。

タグの使い方は至って簡単で、装飾したい文字を<></>ではさむだけです。
例えば、文字を太くしたければ<B>文字</B>とすれば、文字という風に太く表示されるのです。

では、さきほどあなたが写したタグの意味を説明します。

<HTML></HTML>

このタグにはさまれた中でタグが使えるのです。
これがなければタグが使えません。最初に必ずつけましょう!

<HEAD></HEAD>

特にホームページには表示されない部分です。
今の所は気にしないでください。

<TITLE></TITLE>

ホームページを表示しているウインドウ上部の青い部分に、タイトルを表示します。

<BODY></BODY>

この中に書いたものがホームページとして表示されます。

<H1></H1>

このタグの中が見出しとして大きく表示されます。

 

どうです?HTMLについて少しわかりましたか?
HTMLはこれがすべてなのです。
ここまで知っていれば、あなたはホームページ作成の大半の知識を手に入れたといっても過言ではありません。

文字を飾ってみよう!

前項でホームページ作りの基礎は理解できたと思いますが、
あのままでは、あまりに飾り気がなく、つまらないと思います。

 

そこで、次に文字を飾る様々なタグを覚えましょう!
これを知っていれば、かなりホームページが変化に富んでくると思います。

 

でも、「タグを覚えるのって大変では?」と思う人が多いと思いますが、安心してください。
最初はみんな本を見ながら作っているし、上級者でも本を見ながら作る場合がほとんどです。
「こんなタグがあるんだ」ということをある程度知っておくだけでOKですので、気楽に!

 

<B></B>

ボールド。つまり文字を太くするタグです。

<BIG></BIG>

ビッグ。つまり文字を少し大きくします。

<SMALL></SMALL>

スモール。つまり文字を少し小さくします。

<I></I>

イタリック。つまり文字を少し斜めに傾けます。

<U></U>

アンダーライン。つまり文字に下線をつけます。

<S></S>

文字に消し線をつけます。サクジョのSと覚えましょう。

<BR>

はさまず使います。文をそこで改行します。

<HR>

はさまず使います。その行に横線を引きます。

 

もちろん他にもたくさんありますが、ここではよく使うものだけを紹介しました。
自分で調べるのも、いろいろと見つかって楽しいですよ〜。


ここで少し補足説明です。

気づいた人もいるかとは思いますが、メモ帳上で文を「Enter」で改行しても、いざファイルを開くと改行されていなかったでしょう?
HTMLでは<BR>を使わないと改行できないのです。うまく配置してくださいね。

上の例はあえて実際文字がどう変化するのか掲載してません。
メモ帳を開いて、みなさん自身で書き込んで試してみてください!

これで本格HPの完成だ!

えっ・・もう完成!?と思うかもしれませんが、
このページの内容をマスターすれば十分に本格的HPが作れます!

 

ではさっそくタグを紹介して行きましょう!

 

色を変える

 

ここでは背景や文字の色を変えるタグを紹介します。

背景

<BODY BGCOLOR="色の記号"></BODY>

ページ背景の色を変えることができます。

文字色

<FONT COLOR="色の記号"></FONT>

文字の色を変えることができます。



<BODY>
は前々項でやりましたね。そこに半角スペース空けて書き足すだけでOKです。

色記号というのは、それぞれの色にきめられた英数字が割り当てられていて、その英数字を書くことで色を指定できます。
下に色の一例を書いておきます。

#000000

#808080

#c0c0c0

#ffffff

#0000ff

#008000

#00ffff

#ffff00

#800080

#800000

#ff0000

 

色を指定するのはちょっとめんどくさいですね。でも、実際私も色番号の表に従って製作してます。
もちろん他にも色はたくさんあります。使いこなせるようになったら、本やインターネットで調べればすぐに見つかります。

 

また、実は色番号は09AFの文字で構成されている(16進数)ので、適当に作ってみるのもおもしろいです。
意外な色ができあがるかもしれませんよ〜?

 

画像を載せる

 

さて、いよいよ写真や絵をのせてみましょう!

<IMG src="画像のファイル名">

これで画像が表示されます。



まずは画像を、ページが保存してある場所と同じ所に保存しましょう。
後は上記の「画像のファイル名」のところにファイル名をかけばOKですが、その際に画像の形式(.gif.jpg)も忘れずに!

 

リンクを張る

 

ほとんどのホームページは、あるボタンを押すと他のページに変わるようにできてますね?
あれのことをリンクといいます。

<A href="表示するページのファイル名">文字・文章</A>

文字を押すと、指定ページを表示します。


画像と同じように、表示したいページのファイルも同じ場所に保存しておきましょう。
上記の「表示するページのファイル名」の所に .htmlも忘れずにファイル名を書きましょう。

「文字・文章」のところに書いた文字が下線付きで表示され、その文字をクリックすると他のページを表示するのです。

 

テーブルを作る

 

テーブルというのは表のことです。
上記の色記号の表を覚えていますか?あれはテーブルを使って作成したものです。

<TABLE border="1">
<TR><TD>
一列目箱1</TD><TD>一列目箱2</TD></TR>
<TR><TD>
二列目箱1</TD><TD>二列目箱2</TD></TR>
</TABLE>


これでは少し分かりにくいので、下に実際どうなるのか書いてみます。

一列目箱1

一列目箱2

二列目箱1

二列目箱2


上記のように表示されるのです。
<TR>
</TR>はその列を、<TD></TD>はその箱の一つ一つを表すと考えてください。

作るのが難しそうなテーブルですが、意外に簡単に作れることが分かりましたでしょうか?

 

センタリング(文章を真ん中に表示する)

 

トップページなどの人が最もよく見るページは、見やすく整理しておきたいものです。
そこで、文章全体を真ん中に寄せる方法を紹介します。

<CENTER></CENTER>

はさまれた範囲をセンタリング(真ん中寄せ)します。


テーブルや画像もこの方法で真ん中に寄せることができます。

 


以上で超簡単ホームページ作成講座は終わりです。
たったこれだけか?と思うかもしれませんが、当HPもたったこれだけでできているのです(笑)

 

後はあなたのアイデアや次第です。
タグも使い方によって、さまざまなことに応用することができます。
どう使うかは、あなた自身の手で発掘していってください!

 

もちろんタグはまだまだたくさんあります。
タグをたくさん覚えているのもいいことですが、少ないタグ知識をフル活用してページを作るのも重要なことだと思います。
とにかく、まずは自分なりにホームページを作ってみて、HTMLのコツをつかんでください!

 

第5章電子メールの仕組み 

 電子メールの送受信は、インターネット上の多くのメールサーバーが連携することによって動作しています。

 電子メールを送信すると、契約しているプロバイダや、学校や会社にあるメールサーバーにデータが送られます。電子メールを受け取ったメールサーバーは、宛先として指定されているプロバイダなどのサーバーに、そのデータを転送します。電子メールを受け取ったサーバーは、受取人が電子メールを取りにくるまで、サーバー内にデータを保管するようになっています。

 電子メールの受取人は、契約しているプロバイダメールサーバーに自分宛ての電子メールを取りに行き、届けられた電子メールを受け取ります。

 一般的に電子メールの送信や他のサーバーへの転送にはSMTPサーバーが、電子メールの受信にはPOP3サーバーが使用されています。

電子メールの送受信の仕組み

 なお、電子メールをやり取りする際には、メールサーバーに接続するために、インターネット上にあるDNSサーバーを利用して、対象とするメールサーバーIPアドレスを取得するようになっています。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

第6章

コンピュータの構造とプログラム

http://www.ccad.sist.chukyo-u.ac.jp/~mito/ss/Embedded/webPic/intro/index.htm

http://i.cla.kobe-u.ac.jp/murao/class/InfoSci/1-DataExpression.pdf

      I.        コンピュータの構造

                     A.        コンピュータの構造

 コンピュータは通常、記憶装置(メモリ)に記録されたプログラムを実行する装置です。多くのコンピュータは一般にノイマン方式と呼ばれ、メモリに書かれたプログラムを逐次実行する機械です。このプログラム実行部分をCPUCentral Processing Unit:中央処理装置)と呼びます。
 CPUは途中必要があれば、入出力回路を介して外部からデータを取得したり、逆にデータを書き出したりします。
ここでは、組み込み型コンピュータとして、家電製品や自動車などに組み込まれる小型コンピュータの構造を紹介します。

                     B.        組込用コンピュータ

  組込用コンピュータはワンチップコントローラとかマイクロコンピュータとも呼ばれます。1つのチップ(IC:集積素子)にコンピュータの多くの機能が組み込まれています。
 命令を実行するプロセッサ、
 命令を記憶するROM(読み出し専用で、電源を切っても記憶が失われないメモリ)、
 データを記録するRAM(読み書きできるメモリ)、
 簡単な入出力制御用の回路、
等が一つまたは数個のチップに組み込まれています。

http://www.ccad.sist.chukyo-u.ac.jp/~mito/ss/Embedded/webPic/intro/4004chip%5b1%5d%5b2%5d.gif
 http://www.ccad.sist.chukyo-u.ac.jp/~mito/ss/Embedded/webPic/intro/i8085a_s%5b1%5d%5b1%5d.jpg
(画像は http://www.picfun.com/cpuframe.html )

 

                    C.        プログラムと命令

 プログラムは複数の「命令」を組み合わせて、作成します。命令は、データメモリにアクセスしたり、演算や条件判断、次に実行する命令の決定、等を行います。小型のプロセッサの処理単位はバイト(8ビット)で、演算も加減算や論理演算子かできません。
 コンピュータは通常 PC と呼ばれるレジスタ(プロセッサ内部の記憶回路)に実行する番地を記録します。命令を実行すると、PCは自動的に増加し次の番地の命令を実行します。しかし、特殊な命令(制御命令)では、先の命令の実行結果により、次に実行する番地を変更することができます。この制御命令で条件付の実行や、繰り返し処理が可能になります。

                    D.        機械語とコンパイラ言語

 多くの計算機では、プログラムを計算機の命令とは独立した いわゆる 「高級言語」で記述し、コンパイラと呼ばれるソフトで、機械語と呼ばれる命令に変換し、実行します。CJavaは高級言語の仲間です。
 しかし、組込用コンピュータでは命令に対応するアセンブリ言語で直接プログラムすることもあります。アセンブリ言語はアセンブラと呼ばれるソフトで命令に変換されます。

                     E.        入出力回路

 組み込み型計算機では、複数の端子(ピン)を通して、ディジタル信号を入力したり、出力します。外部のスイッチやアナログ信号を入力し、結果を端子に出力して、ランプの点灯やモータの制御をします。ただし、組込用コンピュータの出力する端子では、数十m(ミリ)W(ワット)程度ですから、大きな電力を使用する装置を駆動するには、ドライバと呼ばれる高電力の制御回路を外付けする必要があります。

                     F.        アナログインターフェース

 組込用コンピュータには、ディジタルインターフェース以外にアナログインターフェースも必要です。
音や映像の物理的信号は、人の感覚器官で時間的に変化する信号として知覚されます。この信号をアナログ信号といいます。計算機で処理する場合、物理的信号をセンサーで電気的なアナログ信号に変え、このアナログ信号を一定時間間隔でディジタルな数値に変換し、この数値を計算機で記録し、処理します。このアナログ信号からディジタル信号への変換装置を ADAnalog-Digital)変換といいます。この処理は、音声の場合ディジタル録音、画像の場合ディジタル録画とかキャプチャとも呼ばれます。
 処理(あるいは)記録したディジタル信号を元のアナログ信号に戻す処理を DADigital-Analog)変換といいます。このアナログ変換した信号を、スピーカやディスプレイで人に知覚できる物理現象に変換します。

http://www.ccad.sist.chukyo-u.ac.jp/~mito/ss/Embedded/webPic/intro/image1.jpg

 

     II.        プログラムの実行

                     A.        プログラムと命令

 組込用コンピュータは固有の数十の「命令」を組み合わせたプログラムを実行します。命令は演算命令、制御命令、入出力命令、に大別されます。
 演算命令は加減算と論理演算などがあり、データメモリや入力したデータの間で演算処理をします。
 制御命令は次に実行する命令を指定する命令です。プログラムは通常0番地の命令から、1,2,3と順番に命令を実行していきます。しかし、制御命令を実行すると、直前に実行した演算命令の結果によって、次に実行する命令の番地を変更することができます。
 入力命令は計算機に接続された機器からディジタル信号を取り込みます。出力命令は、計算機が処理した値を機器に出力します。

                     B.        レジスタとデータメモリ

 計算機にはメモリが組み込まれています。メモリは番地(address)とデータ信号を持ち、指定した番地のデータを読み出したり、番地とデータを指定して、データを記憶することができます。
 また、計算機のCPUにはレジスタと呼ばれる高速なメモリが組み込まれています。演算は、通常レジスタ間、または、レジスタとメモリの間で行われます。

                    C.        演算命令

 C言語で、以下のプログラムを作成した場合を考えます。

 int A,B;
 A=B+10;

このプログラムは、Cコンパイラで次のようなプログラムに変換されます。

 変数 A,B をデータメモリの100番地と101番地に割り当てる。
 100番地の内容(変数A)を CPUのレジスタWに読み出す。
 Wに定数10を加える
 Wの値を101番地(変数B)に記憶する

このプログラムを次のような記号で表現します。
 MOV W,100
 ADDL W,10
 MOV 101,W

MOV
は値を「移動」する意味です。MOV W,100 は100番地を読みとりそれをレジスタWに記憶する意味です。ADDL W,10 は定数10Wに加える意味です。ADDLの最後のLは、「リテラル:定数」を意味します。MOV 101,W はW101番地に記憶することを意味します。各行は「命令」で、プログラムメモリの10番地から記憶されているモノとします。

http://www.ccad.sist.chukyo-u.ac.jp/~mito/ss/Embedded/webPic/intro/image.jpg

                    D.        CPUの処理

 CPUの制御回路は、10,11,12番地の命令を順に読み出し、命令にデータメモリの番地が指定されている場合、データメモリを読み書きしながら命令を順に実行をします。
 実行する命令の番地を記憶するため、制御回路は PC と呼ぶレジスタを内蔵しています。このPCを利用すると、制御回路の動作は

 PC番地の命令を読み出す
 読み出した命令を実行する
 PC1を加える

を繰返し実行することになります。以上を説明する図をご覧下さい。

http://www.ccad.sist.chukyo-u.ac.jp/~mito/ss/Embedded/webPic/intro/image2.jpg

   III.        制御命令の実行

                     A.        制御命令

 演算命令だけでは、計算機は次々と命令を実行するだけで、繰返し(C言語のforwhile)や分岐処理(C言語の ifelse)のような、実行の流れを変える処理はできません。計算機の命令には、制御命令があります。その代表的な命令が ジャンプ命令とスキップ命令です。ジャンプ命令は記号では
  GOTO
番地
と書きます。この命令を実行するには、CPUは次のように GOTO 命令の番地を、PCに記憶します。
 PC <- 番地
CPU
は、次の命令を PC 番地から取り出しますから、CPUは次の命令を PC 番地から実行します。これが、ジャンプ命令と呼ばれる理由です。
 スキップ命令は、直前の演算結果により次の命令をスキップして、「次の次」の命令を実行することを指示する命令です。例えば、以下のように 100番地 の内容を1減らし、結果が0なら次の命令をスキップし、「次の次」の命令を実行します。

 DEC 100  ;100番地の内容を1減らす
 SKIPZ    ;結果が0なら、次のGOTO命令をスキップする
 GOTO 10 ;0でなければ、10番地へジャンプする
 
 このように、スキップとジャンプを組み合わせると、以下の例のように 繰返しや条件分岐を実行できます。

                     B.        制御命令の実行

 GOTO命令は、GOTO命令を示す命令のコード部と番地を示す番地部から構成されます。GOTO命令を実行するには、下のように GOTO 命令の番地部の値を、PCに記憶することで実行できます。
http://www.ccad.sist.chukyo-u.ac.jp/~mito/ss/Embedded/webPic/intro/image3.jpg
また、SKIP命令は条件を満たした場合、PCを1つ余分に増やすことで実現できます。

                    C.        プログラム例:繰返し制御

  プログラムの例として、繰返し制御を紹介します。Cはある番地のデータメモリの内容とします。
 最初Cの値を10にします。
 繰返し処理をするプログラムをAを実行します。
 C1減らします。
 減らした結果、0になった場合次のジャンプ命令をスキップします。
 そうでないとき、次のジャンプ命令に進みます
これを次のような記号命令で表記します。

http://www.ccad.sist.chukyo-u.ac.jp/~mito/ss/Embedded/webPic/intro/image5.jpg

 9   MOVL 100,10 ;定数10を100番地の保存
 10 <処理A
 。。。
 18  DEC 100  ;100番地の内容を1減らす
 19  SKIPZ    ;その結果が0なら次の命令をスキップする
 20  GOTO 10 ;10番地に戻る
 21 

ここで、MOVL命令:「Cの値を10にする」、や DEC命令:Cを減らす」は演算命令です。SKIP命令は制御命令の仲間で、スキップ命令と呼ばれます。Cを減らした結果0になった場合、次の命令を飛ばして(スキップする)ジャンプ命令の次の命令に進みます。結果が0でない場合、次のジャンプ命令に進みます。
 GOTO:ジャンプ命令は、次に実行する命令の番地を指定することができます。この場合、処理Aの先頭の命令(10番地)に 「ジャンプ」します。

このプログラムを実行すると、処理A10回繰り返して実行することができます。ただし、処理Aの中でCの値を変更しないものとします。

                    D.        プログラム例:条件付実行

 次は、条件付の実行をするプログラムの例です。ABの値が等しいときだけ、処理Aを実行したいとします。

http://www.ccad.sist.chukyo-u.ac.jp/~mito/ss/Embedded/webPic/intro/image7.jpg

最初に C=AB の計算をします。
この結果でスキップ命令を実行します。
結果が0の場合次の命令をスキップして、
処理Aのプログラムを開始します。
スキップしないと、ジャンプ命令を実行し、
処理Aのプログラムの次に(18番地)ジャンプします。
この場合、処理Aを実行しないことになります。

10 MOV W,A
11 SUB W,B
12 SKIPZ
13 GOTO 18
14
処理A
15
。。。
18
 

これで、大小比較による条件判断ができます。

                     E.        最大温度を記録する

 繰返しと条件判断を繰り返すと、最大温度を計測することができます。外部に温度に対応した電圧を発生する温度センサがあり、PICのアナログ端子に接続されているモノとします。データメモリの番地Tに最大温度を記録します。

http://www.ccad.sist.chukyo-u.ac.jp/~mito/ss/Embedded/webPic/intro/image9.jpg

次のようにプログラムします。
 最初T-100とします
(小さな値ならなんでもかまいません)。
 温度を読み、その値をメモリのP番地に読み込みます。
 TからPを引き算し、結果が正なら
T
の方が大きいので次の命令をスキッ プします。
そうでなければ、Tの値をPに書き換えます。

 これを繰り返します。

このままでは、結果を表示できませんが、小さな数字表示回路を付加すると、結果を表示できます。あるいは、シリアル通信でパソコンにデータを送ります。この場合、測定したデータを送るようにすると、温度のグラフ表示ができます。

   IV.        その他の制御機能

                     A.        CPUの基本構造(まとめ)

CPUの基本は、以下の処理を行うことです。

 命令の取り出し
 命令の実行(演算命令の場合)
 PCの値の更新
  通常は1を増す、
  GOTO命令の場合はPCの値を番地部で置き換える
  SKIP命令の場合、条件を満たせば、PCに1を加える

 これで、プログラムメモリのプログラムによって処理を行う、「万能コンピュータ」が実現できます。ただし、最近の計算機には、他の制御機能(命令)が含まれています。

                     B.        サブルーティン呼び出し、戻り命令

 制御命令には、スキップ、ジャンプ命令以外に、戻り番地を記録して指定番地にジャンプするCALL命令と、記録した番地に戻る RETURN 命令があります。
 例えば、PICには乗算命令がありません。それで、乗算を行うプログラムを作成し、最後に RETURN 命令を付けておきます。乗算プログラムの先頭番地を MULT とすると、乗算は
 CALL MULT
で実行できます。CALL 命令で乗算の番地にジャンプしますが、乗算が終了すると RETURN命令で CALL 命令の次の命令の戻ることができます。

http://www.ccad.sist.chukyo-u.ac.jp/~mito/ss/Embedded/webPic/intro/image11.jpg
CALL
 番地 命令では、指定番地にジャンプする以外に、戻り番地を記憶する必要があります。これには通常、スタックを利用します。スタックへの記憶をPUSH,スタックからの取り出しをPOPとすると、CALL 番地 命令は
 PUSH PC
 GOTO 番地
で実行することができます。また、RETRUN命令は
 POP PC
で実現できます。ここで、POP PC は、スタックから取り出した番地データを PC に記録することを意味します。

                    C.        割り込み機能

 これまでの計算機のプログラム実行の方式では、計算機はあるプログラムの実行を始めると、それが終了するまで、別のプログラムの実行を始めることはできません。でも、最近のパソコンは一度に多くのプログラムを実行しているように見えます。これは、どんな「からくり」を利用しているのでしょうか?
 実は計算機には、ハードウエアの信号により特定のプログラムを呼び出す仕掛け、があります。この仕掛けを「割り込み」機能といいます。
  例えば、10m秒毎に発生する信号で、実行するプログラムを切替えるプログラムを呼び出す「割り込み」機能を設定しておきます。この機能はタイマー割り込みと呼ばれます。メモリ中にある複数のプログラムを同時に実行できるのは、このタイマー割り込みによる「プログラム切替え」が行われるからです。

 割り込み機能は、ハードウエア信号によるサブルーティン呼び出しです。割り込み処理が終了し、元のプログラムに戻れば、実行を「再開」できます。割り込み信号として、データ到着に伴う受信回路からの信号を利用すれば、他のプログラム実行中に、ネットワークからのデータを受信することができます。
 「割り込み」を実現するには、割り込みを有効、無効にする機能と、サブルーティンの「呼び出し」と「戻る」機能が必要です。

    V.        課題

 最高と最低温度を記録するプログラムのフローチャートを書いて下さい。

 

http://i.cla.kobe-u.ac.jp/murao/class/InfoSci/1-DataExpression.pdf

第7章

1. ドライブとフォルダ

  1. ドライブ
     大学のコンピュータ実習室のパソコン(DOS/V)では、ドライブAがフロッピーディスク、ドライブCがパソコン内部のハードディスクとなっている。(Dドライブは、バックアップ用のハードディスク,EドライブはCDROMドライブ、GHドライブはネットワークドライブ)データファイルを保存するとき、必ずドライブAのフロッピーディスクの中に保存すること。
  1. ファイルとディレクトリ(フォルダ)
     ファイルをデータ管理の単位とする情報管理システムをファイルシステムという。パソコン用OSのファイルシステムでは、階層化したディレクトリ(directory:登録簿、フォルダ(folder)ともいう)の下に多数のファイルを登録し、ファイルの検索と管理が容易に行えるようにしてある。

    フォルダとファイルの階層構造
            http://www.kuis.ac.jp/~yosinaga/Pcmanual/C04_01.jpg
  1. エクスプローラでフォルダやファイルの構成を表示する
    [スタート]ボタンをクリックし、[プログラム(P)]にマウスポインタを移動、[エクスプローラ] http://www.kuis.ac.jp/~yosinaga/Pcmanual/C04_02.jpg が表示されたらクリックする。

    [エクスプローラ]のウインドウが表示され、各記憶装置のフォルダやファイルの構成が表示される。

    ・左側のウィンドウには、[すべてのフォルダ]というタイトルがついており。パソコンの全環境が階層で表示されている。3.5インチFD(A)を例として、一番上の階層が「ルート」、その下の階層にあるフォルダを「サブフォルダ」と呼ぶ。http://www.kuis.ac.jp/~yosinaga/Pcmanual/C04_03.jpg マークがついているものは、その中にさらに深い階層があるという印である。http://www.kuis.ac.jp/~yosinaga/Pcmanual/C04_03.jpg をクリックするとマークがhttp://www.kuis.ac.jp/~yosinaga/Pcmanual/C04_04.jpg に変わり、中に入っているフォルダが全部表示される。

    ・右側でクリックされたディスクや、フォルダに入っているフォルダ及びファイルが表示される。

    http://www.kuis.ac.jp/~yosinaga/Pcmanual/C04_05.jpg
  1. マイコンピュータからフォルダやファイルの構成を表示する
     マイコンピュータは、各ドライブ単位ごとに、その中だけが表示される。さらにその中のフォルダ単位の選択したフォルダの中だけが表示される。フロッピーディスクを例として、中のフォルダやファイルを見る。

    ・マイコンピュータ] http://www.kuis.ac.jp/~yosinaga/Pcmanual/C04_06.jpg をダブルクリックする。
    [マイコンピュータ]のウィンドウが表示され、各ドライブがアイコンで表示される。

         http://www.kuis.ac.jp/~yosinaga/Pcmanual/C04_07.jpg

    ・フロッピーディスクがフロッピードライブに入っていることを確認して、http://www.kuis.ac.jp/~yosinaga/Pcmanual/C04_08.jpg[3.5インチFD(A:)]をダブルクリックすると、[3.5インチFD(A:)]のウィンドウが開き、フロッピーディスクの中にあるフォルダやファイルが表示される。
        
        http://www.kuis.ac.jp/~yosinaga/Pcmanual/C04_09.jpg

    ・エクスプローラのようにファイルの詳細な情報を表示するには、[表示(V)]をクリックし、表示メニューが現れたら[詳細(D)]をクリックする

ライン