情報技術科ここだけトピックス
疑似乱数
サイコロをふってでる目のように、不規則な動きをさせてみたい。
C言語にはランダムな値を得るしくみとして、rand( )と初期化のためのsrand( )関数があります。rand( )だけではいつも同じ順番に数が得られてしまうのでsrand( )に現時刻を与えることで不規則な値を得るように見せかけることができます。
基本的にC言語など多くのプログラミング言語で準備されている乱数の仕組みは疑似的なものなので、疑似乱数と呼びます。
うるう年
でも、うるう年ごとにスマホやパソコンの日付を設定せずに自動で表示されています。
うるう年は「4の倍数年にあり、でも100の倍数年には無く、でも400の倍数年にはある」というものです。
法則性があれば、プログラムで解決しやすいことになります。
たとえばC言語などで丁寧に組み立てるとしたら、次のように
if(year % 4 == 0){
if(year % 100 == 0){
if(year % 400 == 0){
days = 29;
}else{
days = 28;
}
}else{
days = 29;
}
}else{
days = 28;
}
考え方次第では、もっと少ない処理で同じことができます。(%は余りを求める演算)
10の乗数を表すSI接頭辞(2)
小さな数を表す接頭辞(接頭語)としては、
m(ミリ)=10-3=0.001 ※千分の1
μ(マイクロ)=10-6=0.000001 ※百万分の1
n(ナノ)=10-9=0.000000001 ※十憶分の1
p(ピコ)=10-12=0.000000000001 ※一兆分の1
f(フェムト)=10-15=0.000000000000001 ※千兆分の1
・・・と続きます。
たとえば通信時間1ms(ミリ秒)なら 0.001s(秒)という換算になります。
あるCPUが2GHz動作で足し算に4クロックかかる場合
4÷(2×109) = 2×10‐9
なので処理時間は 2ns(十億分の2秒)と考えられます。
可逆圧縮と非可逆圧縮
「かぎゃくあっしゅくとひかぎゃくあっしゅく」早口言葉ではありません。
様々な手法でデータ量を小さくすることを圧縮といいます。その中で、圧縮後に元と同じデータが再生できる手法は可逆(Lossless)、圧縮後の再生データは元と異なる手法が非可逆(Lossy)に分けられ、非可逆は多くの場合圧縮率が高くなります。
元に戻せないと困る文書等には可逆圧縮を用いて、画像や音声は人間の感覚で気づかない部分もあるため非可逆圧縮でデータ量を大幅に削減して活用されています。
0.01が0.01ではない??
数値を2の倍数(…21,20,2-1,2-2…)の組み合わせで扱う場合、10進数の 0.01 は切りよく表せません。
例えばプログラムのつくり方によっては、0.01を1万回足すと100.00のはずが100.002953、100万回足すと10000.00のはずが9865.223633が出ます。(同じ値を足しているのに増えたり減ったりします。なぜか考えてみましょう)
銀行の利息や商品の税額計算で、あるべき値が出ていなかったら大きなトラブルになってしまいますね。
※プログラミング言語によっても幾つかの内部表現方法があります。今回の値の変化は「https://paiza.io/ja」のC言語で出力したものです。
DNS
インターネット上の端末はIPアドレスで識別されます。
しかし、ブラウザでWebページを閲覧するときなど「 https://nsg-h.spec.ed.jp/ 」のように、文字列で指定できるようにするしくみがDNS(Domain Name System)です。
DNSサーバがいくつもあり、インターネット上の「名前」と「IPアドレス」の対応を管理しています。
OR(オペレーションリサーチ)
「OR」は、論理演算の論理和(オア)だけでなく、オペレーションリサーチ(オーアール)という分野としても表記として出てきます。
あることがらを よりよいものにするために、「なんとなく」ではなく「定量的」に分析,管理,評価することになります。
たとえば、100個のシュウマイ弁当を製造するために必要な豚肉の量は何グラムか。ある地点Xから〇地点を経由して地点Yに行く最短経路は? などに対して、勘ではなく数学的に分析し最善策を導くこともORの一つです。
ORのように定量的に考えることで、様々なことをプログラムで実現(自動化)することにもつながります。
インフラ
インフラ(インフラストラクチャー:infrastructure)というと、道路や電気,ガス,水道,自治会といった、社会や生活の基盤を指します。
情報技術としてスマホのインフラを考えた場合、通信の機器や通信路、機器の電源となる電柱電線発電設備、様々な規格や法整備に関する団体も考えられます。
多くの人が現在スマホを使っていますが、いつでもどこでも使えていることは決して当たり前のことではなく、いくつものインフラ要素が稼働して実現しています。
DVD
映像などの記録媒体としてDVDを見かけますが、DVDは Digital Versatile Disc の略です。
VideoのVでは無く、多目的に使える円盤媒体という意味です。
フリップフロップ
電気的に記憶する仕組みの一つとして、フリップフロップがあります。
通電している間は、状態を保持したり変更できたりするので
コンピュータが動作するための重要な要素でもあります。