2016年10月17日月曜日

iQos 陰謀論( ゚Д゚)

私は中度(と信じてる)のへヴィスモーカなのですが、最近になって注目されているiQosとPloomTech両方を持つことになりました。

で、おいおい比較などを紹介していこうと思っているのですが、最近発覚したことがあります。

私の家は今は使っていないサーバやPCなど含め、かなりの家電がたこ足配線でつながっているため、電子タバコ類は極力PC充電を行おうと思っています。

※そこで問題となってくるのがPCを起動していない状態でも充電を行いたい場合が出てくる点です。

マザーボードにもよるとは思いますが、電源をオフの状態でもUSB給電を行う方法があります。
私の使っているAsRock製マザーボードでは、以下の設定を変更すると給電できることは確認できました。
UEFI > Advanced > Deep Sleep

これで携帯の充電もPloomTechさんの充電も問題なくできることが確認できたのですが、iQosはPCが起動していないと充電されないことがわかりましたっ( ゚Д゚)

USB Plug and PlayをPCが検知した音をiQos接続時には発していたため、以前から不思議に思っていたのですが・・・

デバイスマネージャの状態が接続時に変わることだけはわかっているので、今後検証していこうと思いますが、iQos付属のマイクロUSBケーブルは充電だけを行うものではなく、PCとのデータ通信ができるタイプのモノです(携帯電話接続で検証済みです)。
充電だけしてくれれば良いものを、なぜ高価なケーブルを配布してまでPC接続にこだわっているのか・・・・

とても良い商品を提供してくれているのは感謝していますが、Phillip Morris さんには一言もの申したいっ( ゚Д゚)

同梱の説明書にも書かずに人のPCになにしてくれとんぢゃっ( ゚Д゚)
(わかる範囲でw)徹底的に調べてくれるっ( ゚Д゚)

そして午前速報

な・・・なんか受かっとる ( ゚Д゚)

正答 53/80 66.25% 合格水準60%

2016年10月16日日曜日

応用情報とりあえず終了ー

応用情報処理試験、今日とりあえず終わりました。。。
なんだか長かったぁ・・・

勉強を始めた当初、勉強内容をブログに上げていこうと思っていたのですが、仕事で忙しくなってしまったのと、実家に帰省した時に勉強して物量に圧倒されてしまい。。。

結果勉強方法を変えて今日に至りました。

過去問の解説してくれているところがないかと探してみたら、俺なんかが解説するまでもなくかなり過去の内容まで網羅してくれているサイトを見つけました。
応用情報処理技術者試験ドットコム

まず驚いたのが、ほぼ何も勉強していない状態で午前問題を解いたところ合格水準ぎりぎり届かないぐらいだったところです。
おそらく、ITに関わる仕事をしている人だったら同じかもっといいぐらいなんじゃないでしょうか。

なのでひたすら上のサイト様で過去問を解き、解説を精読するを繰り返したところ、過去2年分を解いたぐらいでなんとなく6割以上は正解する水準になりました。

過去問題を解いて、解説を見たけどわからないものは参考書を確認し、語句や考え方を覚えていくを繰り返したところ、午後問題も「全くわからない」ほどのものでもなくなった感じでした。

とは言え、ほぼ午後対策はほぼできなかったので、期待はできないと思います。
もっと早くに上のサイト様に気づいていたら、勉強の内容も変わったのかな?と思うとちょっと残念ですが、とりあえず解放されたので良かったです(*´▽`*)

午後は必須問題の「情報セキュリティ」、それからおいおい書きますが僕は経営学を学んだことがあるので「経営戦略」、「システム監査」を流し読みして、昔なんちゃってSEをしていたので「プロジェクトマネジメント」、それから今やっている仕事に関連して「サービスマネジメント」の項目を参考書の内容だけ確認しました。

先日、今回基本情報処理技術者試験を受ける同僚に聞かれて確認したところ、基本情報処理は結構な分量をプログラミングやアルゴリズムに割いているのですが、応用情報処理技術者はプログラムやアルゴリズムを選択しなくても選択問題を網羅できてしまうのはありがたかったです。

結果は出次第ここにも書かせてもらおうと思いますが(わざわざ恥をさらさなくても良いような気もしますが)、午前が間違って受かっていたら2年間は午前は免除されるようなので、他の高度試験も含めてチャレンジするかもしれません。

2016/10/17 上記取り消し線部分修正
***********************************
調べたところ午前に合格しても応用情報処理技術者試験の午前試験免除はありませんでした。
免除が受けられるのは一部の高度試験になります。
お詫びして訂正させていただきます。
***********************************

とりあえず情報処理技術者試験を受けた方々、おつかれさまでしたぁ(*´▽`*)

2016年10月5日水曜日

2進数表現(負数の表現)

2の補数について

2進数の補数には、1の補数と2の補数という表現方法があるそうです。

1の補数は桁内の最大数を基準とした方法で、2の補数は桁内の最大数+1を基準値とした方法ということだそうです・・・
これだけで理解しろと・・・?

8ビットで1の補数を解説すると、

11111111 ・・・ 8ビットで表現できる最大の数値

これで-12を表現したいとすると、最大の数値から12を引くことで表そうということなので、

 11111111
- 00001100
⇒11110011 ⇒ これを-12とする、というのが1の補数の考え方

同様に8ビットで2の補数を解説すると、

11111111+1を最大値として表現するので、
100000000 の9ケタで表現しますよっと

  100000000
- 000001100
⇒011111111 - 000001100 + 1 ・・・ 100000000を011111111と1に分解すると全桁反転させて表現できる
⇒011110011 + 1
⇒011110100
⇒9ビット目は仮に存在する桁なので、11110100が-12を表現することになるということだが、今いち意味が分からない・・・www

つまり、上の解説は1の補数、2の補数の考え方を述べているだけで、実際の数字を表す手法の解説ではないということを念頭に置かなければならない・・・と、こう考えることができるのは次の解説でわかる。

「最上位ビットで正・負の判断を・・・」

8ビットで正負両方の数を考えた場合、最上位8ビット目を正負の符号と考え、0の場合は正、1の場合は負とする。そのうえで、表現できる数を簡単な一覧にすると

01111111 ・・・ +127
01111110 ・・・ +126



00000011 ・・・ +3
00000010 ・・・ +2
00000001 ・・・ +1
00000000 ・・・ 0
11111111 ・・・ -1
11111110 ・・・ -2
11111101 ・・・ -3



10000000 ・・・ -128

この表現方法で表現できる数値の範囲は$-2^{n-1}$~$2^{n-1}-1$となる。nに8を代入すると$-2^7$~$2^7-1$で、-128~127となり上の表と合致する。

逆に符号が正の場合は単純な加算処理を行えば表現している数字はわかる。

たとえば、「00001100」は最上位ビットが0なので正であり、4の桁($2^2$)と8の桁($2^3$)を足した値、つまり10進数で「12」を表しているとみることができ、

符号が負の場合は最上位ビットを除くビットが表現している値から、与えられている桁数の最大値を引くことで表現している数字がわかる。

たとえば「10001100」は最上位ビットが1なので負であり、4の桁($2^2$)と8の桁($2^3$)を足した値、つまり10進数で「12」から最大値「128」を引いた「-116」を表していることがわかる。

参考書はここでまとめとして、3つの負数を表現する方法の違いを述べている。

1.符号と絶対値 ⇒ 最上位ビットを符号とし、それ以外は絶対値で表現する
2.1の補数
3.2の補数

・符号と絶対値及び1の補数の場合、表現できる範囲が ($-2^{n-1}-1$)~($2^{n-1}-1$)
・符号と絶対値及び1の補数の場合、2つの「0」が存在する

・2の補数で表現できる範囲は($-2^{n-1}$)~($2^{n-1}-1$)
※2の補数を用いることで、減算を負数の作成と加算処理で行えるため、ハードウェアの演算回路を単純化できる

・・・ つまりここまで言ってたことは、ハードウェアの演算回路を単純化するために考えられた表現方法だったということか・・・・ 早く言ってほしいwww

しかし、ここまでで全743ページ中22ページしか進んでいない orz
根本的な考え方を変えないといつまでたっても終わらないな・・・

2進数表現(正の整数)

今日は・・・皆大好き2進数 (*´▽`*)

<この記事で覚えるべき内容1>
2進数で正の整数を表現する時、一番右のビットの右側に小数点を置く(正の整数なので当たり前だが・・・)固定小数点表現を用いる・・・とある。

わざわざまどろっこしい言い方しなくてもよさそうなものだけど、確かに小数点は固定されてる・・・というか正の整数なのに小数点いらない気もしなくはない・・・

表現できるビット数(n)に対して、 $2^n$ 通りの数の表現が可能となる。

で、表現される最小の数は「0」であり、「0」もビットを消費するので最大の数は「$2^n-1$」となる。

かつて高校生だった時にこの手の表現はいや程見てきたけど、結局嫌気がさした一番の原因は「こまかっ( ゚Д゚)」というところではなかろうか。

真剣に考えてみるととても当たり前だし、大人だからそこが「大きな差」を生むと思えるが、若い時分に $2^n-1$ と $2^{n-1}$ の違いなどどうでも良い気がするし、それぐらいだったら可愛い若い女の子を見ていた方がいいというのも納得できる。
そちらの方がとても大事だ・・・

だが俺は今試験勉強している結構なおじさんなのでわかるっ( ゚Д゚)

「『0』が一つの数字として存在するから表現できる数は『$2^n$』から『1』を引いた『$2^n-1$』である」とっ( ゚Д゚)
・・・俺って相当頭悪かったんだな・・・www

ここで重要な公式が突拍子もなく出てくるのはいつも通り
2進数を10進数に変換する公式だっ ( ゚Д゚)

$$a_m×2^m+a_{m-1}×2^{m-1}+…+a_0×2^0=\sum_{k=0}^m a_k\cdot 2_k$$

そうだね・・・ 掛けて足せば出るよね・・・ で、「2進数⇒10進数の求め方」と書いてあるが、正確には10進数のd乗を2進数で表すためには何桁必要かを求める式が以下。
だいぶ端折ってるなwww

$$10^d-1\approx2^n-1$$
$$10^d\approx 2^n$$
ここで両辺の対数を取ると
$$\log_{10}10^d\approx\log_{10}2^n$$
$$d\cdot log_{10}10\approx n\cdot \log_{10}2$$
$$d\approx n\cdot \log_{10}2$$

かつて対数の勉強をしていた時に常々思っていたのだが、「何故対数を使うのか?」という点は俺が本当に意味を理解していなかったことを如実に表しているように思う。
そのころの先生は教えてくれようとしていたのだとは思うが・・・ 俺は女の子に夢中だったっ( ゚Д゚)

まず、対数を取る:べき乗の計算を行う ⇒ 元の数字とは関係のない数字になる: $10^d$ は $\log_{10}10^d は数字としては全く違うもので、「d」乗の数値だけを取り出して計算しやすくしているだけになる。

上の例では、「10」を底に取った対数を両辺で表していて、それがほぼ同じになることを利用して、「10」のd乗は2進数のn乗になるのか?を解いている。

対数に関しては別途項目を割いているようなので、そこで改めて勉強しよう・・・

しかし3分の2ページでこれだけのことを表現しようとするとは・・・ 参考書恐るべし

2016年9月10日土曜日

r進数

前記事の「Bloggerで数式表示」で書きましたが、2016年10月の応用情報処理技術者試験を職場の友人にたぶらかされて受験することになってしまいました。

基本情報処理技術者試験はだいぶ前に取ったのですが、私の本職はプログラマでもないので特にそれ以上取ろうという気もあまりなかったのですが・・・・

私の経験上、こういう系統の試験は勉強した端から忘れてしまうので、書き留めながら勉強するという意味と、落ちて次回受ける時(受かりたいですが・・・)にまた一からやり直しにならないように備忘録的に書き込んでいきたいと思います。

今回はr進数です。

<記事ここから>
買った参考書が難しすぎるのか、僕の理解力が少ないのかはわからないですが、精読しないと訳がわからないことが多すぎるのがこの手の試験参考書だったりします。

例えば・・・
「有限個の記号を使って無限個のものを識別しようと考えられたのが10進数に代表されるr進法です。r進法では、0~(r-1)までのr個の数字をある規則に従って並べることで無限の数を表すことができます。」
みたいな感じです。

上の内容を僕なりに解釈すると
「10進数が世の中では一般的に使われているが、別にそれにとらわれずr個の記号で数を表すことができる。例えば
10進数は『0,1,2,3,4,5,6,7,8,9』の10個の記号を使って数を表すことができるが、別にそれにとらわれることなく『a,b,c』の3つの記号を使ったって構わない。
ちなみに上の三つの記号を使って0~9の数字を表すと

a, b, c, aa, ab, ac, ba, bb, bc

と表すことができる」

簡単になっているのか・・・・?(ノД`)・゜・。

ここで、上の例でいう「abc」を基数(radix)と、言うそうな

で、10進数Nを「a」を基数とするr進数で表現すると

<この記事で覚えるべき内容1>
N(10) = am×$r^m$+am-1×$r^{m-1}$+・・・+a1×$r^1$+a0×$r^0$+a-1×$r^{-1}$+・・・+a-m×$r^{-m}$

と表現できる・・・のだそうだ・・・長い・・・

まあ、つまり各桁の数字(r)を各桁の重み(累乗)で掛けて足すとわかる・・・とこのようなことらしい。

ここで、上の知識で解ける過去問を一つ


上の問題を逆に解釈すると、2進数の有限小数表現ができる、つまり2進数で表しても無限に終わらないようにならない奴を除外すれば良いので

$2^0=1$
$2^{-1}=0.5$
$2^{-2}=0.25$
$2^{-3}=0.125$

なので、
ア. $0.375=0.25+0.125=2^{-2}+2^{-3}$ で表現可能
イ. $0.45=0.25+0.2$ で「0.2」は表現できなそう・・・
ウ. $0.625=0.5+0.125=2^{-1}+2^{-3}$ で表現可能
エ. $0.75=0.5+0.25=2^{-1}+2^{-2}$ で表現可能

つまり答えはイ.となる。


ここで参考書は16進数の元の数字を16倍すると桁上がりすると突拍子もなく言ってくる。つまり・・・

<この記事で覚えるべき内容2>
16進数の 「$6B.5$」 を16倍すると 「$6B5$」 と小数点が右に一個ずれる
2進数の 「$1011.11$」 を2倍すると 「$10111.1$」 となる、とこう言うことだそうな。
これは当たり前のようにも見えるが、おそらくこれを必要とするような問題が出てくるんだろうな・・・

<この記事で覚えるべき内容3>
10進数をr進数に直す方法は以下のような方法だそうな・・・

例えば10進数「603」を16進数に直すには

16 ) 603

16 )  37 ・・・余り11

16 )   2 ・・・余り5

         0 ・・・余り2

余りを下から並べると、「$25B$」となる。これは別に8進数であろうが4進数だろうが同じらしい。
しかし・・・なぜだろう・・・ 気になると放置できん・・・

逆に10進数に戻してみよう・・・

16進数の「$25B$」は、
$2*16^2+5*16^1+11*16^0=2*256+5*16+11=512+80+11=603$

あ・・・つまり10進数に戻す方法を逆にしてるのか・・・って当たり前かww

この内容で解ける問題を・・・

26 ) 123

26 )    4 ・・・余り19

           0 ・・・余り4

4は「E」、19は「T」になるので、答えは「ET」のエ.となる。

<この記事で覚えるべき内容4>
10進数をr進数に変換する時、小数部分の計算は<内容3>とは逆に掛けていけ・・・だと・・・?

少数「0.75」を2進数に変換
$0.75*2=1.5$ ・・・この繰り上がった1が小数点以下1桁目、まだ少数になっている0.5を
$0.5*2=1.0$ ・・・繰り上がった1が小数点以下2桁目で、2進数表記の「0.75」は

$0.11$

となる。

16進数に変換したとすると・・・・
$0.75*16=12.0$ つまり「0.C」で表される・・・だとぅ・・・・?

「1」を「16」で割ると「0.0625」で、「12」をかけると・・・「0.75」 おぉ・・・( ゚Д゚)

今日はこの辺にしておいてやる・・・( ゚Д゚) ・・・あれ・・・なんかまだ書いてある (ノД`)・゜・。

<この記事で覚えるべき内容5>
「(3n+1)進数で表された3の倍数の各桁の総和は3の倍数になる」
うるせぇっ 丸覚えしてやる (ノД`)・゜・。

今日はこの辺で・・・
この調子で試験に間に合うのか??

2016年9月9日金曜日

Bloggerで数式表示 2016/9/9現在 HTML編集方法

仕事の同僚にそそのかされて、「応用情報処理技術者試験」というのを受けることになり、後1か月程度で試験となりました。。。

それで、まあ復習の意味とかも含めて、こちらのブログに載せていこうと考えたのですが・・・
Bloggerで数式表示というのが割と色々なところで紹介されていたのですが、割とHTMLのテンプレート編集にてこずったので書いてみます。

おそらくですが、Google先生の色々なサービスはちょくちょくデザインが変わるので、しばらくするとこの記事で書かれている内容も変わってくる可能性はあります。

このエントリーをはてなブックマークに追加
まずは参考にさせていただいたサイト様
http://ichiro-maruta.blogspot.jp/2012/01/bloggermathjaxtex.html
http://irrep.blogspot.jp/2011/07/mathjax-in-blogger-ii.html

テンプレートのHTML編集で必要部分をhead内部に書き込む、だけですが・・・


まず、赤丸の部分がまず見つけづらかった・・・です・・・ 見つけてしまえば大したことないですが。。。

次に、実際にスクリプト部分を書き込んだのですが・・・


こいつが邪魔でHTML編集画面のコントロールが見えず・・・
右側の×で消すとやっとコントロールと、「保存」が見つかりました。


で、以下をブログ記事内に書き込むと・・・

このように数式が表示されます (*´▽`*)
$e^{i\pi}=-1$

このエントリーをはてなブックマークに追加