キーボード検討
会社で使うキーボードとマウスを新調しようと思って調べてる。
キーボードは高いやつ買っちゃおうかなと。
東プレ Realforce91UBK-S 静音キーボード 静電容量無接点方式 変荷重 ブラック NG01BS
- 出版社/メーカー: 東プレ
- 発売日: 2010/08/05
- メディア: Personal Computers
- 購入: 7人 クリック: 128回
- この商品を含むブログ (14件) を見る
マウスはまだ迷っているけど、
【楽天市場】パソコンアクセサリ > お買い得アウトレット!:エレコムダイレクトショップ
アウトレットショップ見つけたので、ここで選ぶつもり。
キーボードもマウスもみんなどこでどう選んでいるんだろうか?
合同式
定義1.1
mを自然数、a、bを整数とする。aをmで割った余りと、bをmで割った余りが等しい時、
a≡b (mod m)
と書き、「aとbは法mに関して合同である」という。
定義1.2
mを自然数、a、bを整数とする。a-bがmの倍数であるとき、
a≡b (mod m)
と書く。
定理1.4 合同式の性質
mを自然数、a、b、c、dを整数とする。
a≡b (mod m), c≡d (mod m)のとき、
(i) a+c≡b+d (mod m)
(ii) a-c≡b-d (mod m)
(iii) ac≡bd (mod m)
が成り立つ。
これが成り立つと、問1.3が解ける。
a≡3、4 (mod 5)と×ので、
a+b≡3+4=7≡2 (mod 5)
ab≡3x4=12≡2 (mod 5)
剰余の計算だけで、元の数を足したり掛けたりした後の剰余が計算できるなんて、驚き。
割り算
昨日の続き。寝ながら考えたら分かった。
問1.3 aを5で割ると3余り、bを5で割ると4余る。a+b、abを5で割るといくつ余るか。
aを5で割ると3余り、だから、
a=A×5+3
bを5で割ると4余る、だから、
b=B×5+4
ということは、a+b、abは、
a+b=A×5+3+B×5+4=5(A+B+1)+2
ab=(A×5+3)(B×5+4)=A×5×B×5+A×5×4+B×5×3+12
=5(5AB+4A+3B+2)+2
と式変形できるんで、どちらも余りが2というのがわかる。
昨日は式の立て方がまずかった。
前の章で似たようなことを教えてくれてたのにね。
余り
問1.3 aを5で割ると3余り、bを5で割ると4余る。a+b、abを5で割るといくつ余るか。
a、bを5で割った時の余りがわかってると、a+b、abを5で割った時の余りがわかるらしい。ふーん。
a÷5=A+3
b÷5=B+4
だから、
両辺それぞれ加算して、
a÷5+b÷5=A+3+B+4
(a+b)÷5=A+B+3+4=A+B+5+2
だから、a+bを5で割った時の余りは2、
両辺それぞれ乗算すると、
a÷5×b÷5=(A+3)×(B+4)
ab÷25=AB+3B+4A+12
???どうまとめていけばいいのかわからん。。。
答えは12を5で割った余りの、2らしい。
a+bとabの5で割った時の余りが、どちらも2になるところがミソらしい。
このあと証明されるんだろうけど、ひとまず今日は終わり。
osxでext4のマウント
% brew install ext4fuse
って感じでインストールした。Homebrewって便利だなあ。
% sudo ext4fuse /dev/disk1s1 ~/hoge
fuse4x kernel extension was not loaded. Please check /var/log/{system|kernel|debug}.log for more information.
あれ?って思ってさかのぼったら、ちゃんと書いてあった。。。
In order for FUSE-based filesystems to work, the fuse4x kernel extension
must be installed by the root user:
sudo /bin/cp -rfX /usr/local/Cellar/fuse4x-kext/0.9.2/Library/Extensions/fuse4x.kext /Library/Extensions
sudo chmod +s /Library/Extensions/fuse4x.kext/Support/load_fuse4x
もう一度試したらマウントできた。読み込み専用だけど。
WHR-G301Nを子機にして、ソフトバンクの光BBユニットに繋ぐ -> 無理っぽい
ここ数日格闘してたけど、どうやら無理っぽい。
別の部屋にNASを置いて、無線でインターネットに繋ぎたくて、
インターネット→光BBユニット→(無線)→WHR-G301N→NAS
を目指していた。
WHR-G301Nから「エアステーション間接続」で繋がったぽかったけど、
どうしても光BBユニットが反応してくれない。。。
そろそろ諦めたくて検索してみたら、こんなのがあった。
価格.com - 『アドホックパーティーをやりたいのですがご享受ください!』 クチコミ掲示板
やっぱダメなんだろう。あきらめました。
BUFFALO 11n/g/b対応 無線LANルーター 【Wii U動作確認済み、iPhone5・Android端末対応】 WHR-G301N/N(FFP)
- 出版社/メーカー: バッファロー
- 発売日: 2011/12/26
- メディア: Personal Computers
- 購入: 59人 クリック: 248回
- この商品を含むブログ (19件) を見る
AUTOINSERTLISP
仕事でVerilogを書くとき、verilog-modeを使わせてもらっている。AUTO_TEMPLATEやAUTOINSTを使って、インスタンス呼び出しをいい感じにしてた。
シミュレータの問題で、2次元配列をいい感じにダンプできなかった。仕方が無いので、1次元配列(というかバス)にassignすることで無理矢理ダンプしてた。
こんな感じ。
reg [7:0] ARRAY [10:0];
wire [7:0] BUS_0 = BUS[0];
wire [7:0] BUS_1 = BUS[1];
....
面倒くさ過ぎてなんとかならんもんかと思って、最近暇だったので調べてみたらなんとかなった。AUTOINSERTLISPなる関数で、lispで生成した文字列を挿入できた。
こんな感じ。
reg [7:0] BUS [10:0];
/*AUTOINSERTLISP(insert (mapconcat '(lambda (i) (concat " wire [7:0] BUS_" (number-to-string i) " = BUS[" (number-to-string i) "];")) (number-sequence 0 10) "\n") "\n")*/
// Beginning of automatic insert lisp
wire [7:0] BUS_0 = BUS[0];
wire [7:0] BUS_1 = BUS[1];
wire [7:0] BUS_2 = BUS[2];
wire [7:0] BUS_3 = BUS[3];
wire [7:0] BUS_4 = BUS[4];
wire [7:0] BUS_5 = BUS[5];
wire [7:0] BUS_6 = BUS[6];
wire [7:0] BUS_7 = BUS[7];
wire [7:0] BUS_8 = BUS[8];
wire [7:0] BUS_9 = BUS[9];
wire [7:0] BUS_10 = BUS[10];
// End of automatics
EmacsLispがよくわかってないんで、ここまで来るのにひと苦労。
でもうまく応用すれば、検証で使えそう。これまではRubyとかで条件ぶりしてたけど、Verilogで書いたベンチと別ファイルになるんで管理がめんどかった。lispで書けるんで、ベンチの中に直接埋め込めるようになるから、一つのファイルにまとめられる。
いいかも。