ホーム » 2017 (ページ 3)

年別アーカイブ: 2017

2024年5月
 1234
567891011
12131415161718
19202122232425
262728293031  

検索・リンク

高専ライブ:2017年11月26日(第552回)

学生さんがテスト期間中につき、教員による収録でお送りしました。

  • 新任教員紹介 物質工学科 松野先生
  • サイエンス共和国 第16回 「灯の話 LED編」
  • 中村鋭一さんを偲ぶ

ゲスト:物質工学科 松野先生

担当:松井(体育科教員)、中村(国語科教員、MC)、西(電子情報工学科教員、MIX)

Peter Chen記法(ER図)

データベースのテスト問題を考えるべくWeb閲覧中。授業後半で説明するER図の書き方には様々なものがある。後半の授業用にメモ。

  • Peter Chen記法実体を長方形関連をひし形属性を角丸長方形で描く最もシンプルな書き方。授業では、この方式で説明している。
  • IDEF1X(Integration Definition)記法:アメリカ標準技術研究所(NIST)が規格化。
  • IE(Information Engineering)記法:データベース設計に特化した、ER図表現法

図は、参照元サイトからの引用

高専ライブ:2017年11月19日(第551回)

専攻科スペシャル

  • 専攻科の授業について
  • 高専生に聞きたい5つのこと 第10回 スペースバルーンプロジェクト参加学生

ゲスト:礒口(1PS),前田(1PS)、玉村(1PS)

担当:松島(1ES,MC)、西(教員、MIX)

家族のGoogleアカウントへの攻撃

うちの奥さんに、Google さんから、「あなたのアカウントに台湾からアクセスがありました」といったメールが届く。海外に遊びに行ってるわけでもなく、まずはメール自体が「フィッシングメール」かどうか確かめる。この文面からすると、アカウントにアクセスがあったけど、国外でのアクセスは異常なのでブロックしたという雰囲気。つまり、パスワードが漏れている可能性が高い。

使い回しパスワードは危険

パスワードの使用状況を聞いてみたら、gmail のメールアドレスで、複数の Web サービスを利用していて、そのパスワードが全部同じ。これからすると、使っている Web サービスのどこかで認証情報が盗まれ、そのアカウントで別の Web サービスに侵入が行われたと考えるべき。典型的な、共通パスワード利用者への辞書攻撃。

お金系は2段階認証が必須

ということで、早々に (1)Googleのパスワード変更と2段階認証設定、(2)Google IDと同じパスワードを使っている他のWeb サービスのパスワード変更を行った。特に金融系とか通販でクレジットカードを入力しているものは、特に。ただ、よく使っていたクレジットカードはサービス停止で切り替えたようで、多少は安心。(3)最後に Apple ID, Amazon, Facebook といったものも、2段階認証をONにする。

専門基礎3-キルヒホッフの法則

オームの法則での合成抵抗などの理解ができたところで、キルヒホッフの法則の説明。

2電源3抵抗の回路をキルヒホッフで解く

2電源3抵抗の問題で、オームの法則を使って式を立てる前に、電位のイメージを水の高さでイメージして、電流が合流してGNDまで落ちていく様を見せるための資料。

この電位の考えにもとづいて、式を立てると以下の連立方程式が求まる。あとは、E1,E2,R1,R2,R3の値が与えられれば、I1,I2,I3を求めることができる。

(さらに…)

講義録がChromeで表示ズレ

今年度、後半は講義録をマメに記載してきた。

でも、プロジェクタをつかって、講義録を見せながらの授業で Safari だと、折り返しが発生して見づらかったので、Chromeを起動してみた。しかし、今度は空白の表示幅の問題で、内容がずれて表示される。ということで、wordpress のスタイルシートで、以下の変更。また、折り返しされると、見づらいので横スクロールするように変更。

code,
kbd,
pre,
samp {
	font-family: "MS ゴシック","MS Gothic",Sans-Serif;
	font-size: 1em;
}
pre {
	border-top: 1px solid #ddd;
	background-color: #f1f1f1;
	padding: 15px;
/*	white-space: pre;
	white-space: pre-wrap;
	word-wrap: break-word;
*/
	overflow-wrap: normal;
	overflow-x: scroll;
}
/* 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 */

電卓プログラム作成の補足

専攻科実験で、「字句解析と構文解析で電卓プログラムを作ろう」というネタを実施中。

サンプルプログラムを見せて、課題の1つが「式を読みやすくするための空白が使えるように改良」としているが、学生さんより、『最初に空白を全部消してから処理するのはアリ?』との質問。

ひとまずは動くプログラムをつくってくれればいいけど….

でも、空白を先に全部消してから、トークン切り出しをやると、色々とトラブルが起こる。

((例1))
x=-1 ;
昔、私が学生の頃に使ったCコンパイラは、"+="演算子を、
"=+"と書いても良かった。だから、"x -= 1"と誤認され、
プログラムがバグった。この経験以降、代入文の"="の前後
とかややこしい演算子の式で、空白を適所に打たないヤツは
シロウト判定している。
今回の質問のように、空白を除去してから字句解析を行うと、
"x = -1"と誤認されないように空白を入れあっても、
"x -= 1"に誤認される。

((例2))
C++でのテンプレートクラスでは、<>の中に型を
書いたりするけど、Foot<int>といった型も
出てくる。んで、<>の中にテンプレートクラス
が出てくると、Foo< Bar<int> > といった
型を使う場合がある。でも、空白除去後に字句解析をすると、
Foo<Bar<int>>となり、右シフト演算子になる。
→ C++03 から C++11 での仕様の変化
 ・C++03までは、テンプレートの">"の前後には空白を入れるべき。
 ・C++11からは、"<"のトークンの数で">>"でも区別してくれる。

一般県道福井鯖江線・石田家久停車場線が完成

高専近くの白鬼女橋と武生商業高校付近をつなぐ「一般県道福井鯖江線・石田家久停車場線」が11月12日に完成し通過ができるようになった。これで越前市方面から高専への便利な道が完成となった。

しかしながら、今朝子供を高校に送る際、早々にも渋滞してる。これからは、もう5分早く出なければ….。雪も積もるようになったら、さらに渋滞するだろうな…。

viewテーブルとデータベース設計

実テーブルとビューテーブル

データベースでの表の構造は、テーブルの集合で表され、これは概念スキーマに相当する。

しかし、プログラマーの視点では、複数の表から構成されているといった所を気にせずプログラムを作れると便利。こういう使い勝手のよいテーブルは、外部スキーマに相当する。この外部スキーマを定義するものが、create view 命令である。

-- 優良業者しか見えないテーブル --
create view 優良業者 ( 業者番号, 優良度, 所在 )
  as select S.業者番号, S.優良度, S.所在
        from S where S.優良度 > 15 ;

-- 串刺し結果で参照できるテーブル --
create view 業者在庫 ( 業者名, 在庫量 )
  as select S.業者名, SG.在庫量
        from S, SG
        where S.業者番号 = SG.業者番号 ;

-- 外部スキーマで参照 --
select 業者在庫.業者名, 業者在庫.在庫量 from 業者在庫 ;

このように外部スキーマを設けることで、SQLをシンプルに記述できたり、外部プログラマが余計な内容を見れないようにしたりすることができる。ただし、データベースシステムによっては読み出しだけだったり、ビューテーブルを更新する時に更新異常が発生する場合がある。 (さらに…)

トランスポート層とTCP/IP

最初に簡単に転送速度の例題の解説。

毎年、意外と間違いが多いのが、異なる速度のネットワークを経由した転送時間。パケットは、バケツリレー方式で送られるので、通信路の一番遅い部分の通信速度で計算すればいい。

サブネット同士をつなぐプロトコルとして、IPプロトコルを紹介したが、データ通信ではノイズなどの影響で通信に失敗することがある。これらを補うためのTCPがある。

TCP

TCP(Transmission Control Protocol/トランスミッションコントロールプロトコル)では、分割されたパケットを元の順序に組み上げたり、パケットが途中で消えた場合の再送などの処理を行う。この機能により確実に相手に送る機能が実現されている。

3way ハンドシェーク

TCPの通信では、最初に相互に通信が可能かを確認するハンドシェークが行われる。パケットには、SYN,ACK,FINといった種別を表すフラグがついており、SYNは接続確立の要求を表す。ACKは了解を表す。FINは切断要求を表す。通信開始の時には、(1)通信OK?,(2)OKだよ、そっちもOK?,(3)OKだよ!といった3つの通信パケットで確認してから通信を行う。この最初のやり取りを3way ハンドシェークという。

(さらに…)

システム

最新の投稿(電子情報)

アーカイブ

カテゴリー