タグ

け計算機科学に関するmidnightseminarのブックマーク (24)

  • US Secure Hash Algorithm 1 (SHA1)

    D. Eastlake, 3rd Motorola P. Jones Cisco Systems 2001年 9月 English SHA-1 (US Secure Hash Algorithm 1 (SHA1)) このメモの位置付け このメモは、インターネット コミュニティに情報を提供するものです。いかなるインターネット標準をも規定するものではありません。このメモの配布に制限はありません。 著作権表記 Copyright (C) The Internet Society (2001). All Rights Reserved. 要旨 書の目的は、SHA-1 (Secure Hash Algorithm 1) を、インターネットコミュニティが容易に利用できるようにすることにあります。米国は、ここで記述する SHA-1 ハッシュアルゴリズムを FIPS (Federal Informati

  • 珍しいSHA1ハッシュを追い求めて - プログラムモグモグ

    「SHA1ハッシュってあるだろう?」 放課後、いつものように情報処理室に行くと、高山先輩が嬉しそうな顔でそう言った。 「ええ、SHA1、ありますね」 「SHA1って何桁か覚えているかい?」 「えっと…」 一年下の後輩、岡村が口を開いた。 「50桁くらいはありましたっけ…?」 先輩はパソコンに向かって何かを打ちはじめた。 現在、情報部の部員は三人しかいない。部長の高山先輩と、二年の自分と、後輩の岡村だ。いや、正確に言うと、先輩の学年にはもう少しいたのだが、もうほとんど部室に来ることはなくなってしまった。無理もない、この季節になると先輩たちは受験勉強で忙しくなる。 「例えば、こういうふうに… 適当なSHA1の長さを…」 echo -n | openssl sha1 | awk '{print length}' 部長だけは今も部活に来てこうやって色々なことを教えてくれている。人曰く、普通に勉強

    珍しいSHA1ハッシュを追い求めて - プログラムモグモグ
  • 蓮舫議員の「二位じゃダメなんですか?」を再考する

    ネット界隈では嫌われている蓮舫氏だが、その理由として事業仕分けのときの高圧的姿勢をあげる人は多い。蓮舫氏が民進党の代表になったことから、自民党議員も「1番でないと絶対ダメ」と当時を意識した発言をして、有権者にアピールしている(朝日新聞)。安倍政権で科学技術関係予算を世界一の額にしているわけではないので自滅行為な気がしなくも無いが、それはさておき、伝説となった次世代スパコンに関する「二位じゃダメなんですか?」を振り返ってみよう。 1. ただひたすら計算機であるスパコンと言う存在 国内にある一つのスパコンの速度が、あるベンチマークで世界一である事自体に、大きな意義があるわけではない。実際に使うアプリケーションのスループットの方が重要になるし*1、利用者が多くて混雑するのであれば、高い一台よりも安い十台の方が使い勝手が良いこともある。値段は十分の一で速度は半分のようなスパコンも良く自慢されている

    蓮舫議員の「二位じゃダメなんですか?」を再考する
    midnightseminar
    midnightseminar 2016/10/04
    “蓮舫氏の質問を素人の疑問レベルと批判しているが、むしろ蓮舫氏のこの質問を呼び込んでしまった官僚が素人レベルである”
  • メリーランド大学、プログラム可能な量子論理ゲートを実現

    今回、研究者が作り上げたのは、複数のアルゴリズムを実行できる小規模な量子コンピュータだ。 このブレークスルーのキーポイントは、ソフトウェアで量子ビット、すなわち「キュービット」をプログラムできるという能力だ。これにより、単一の問題のみに特化した量子コンピュータではなく、汎用目的の量子コンピュータを実現する道が切り開かれたことになる。 メリーランド大学の量子合同研究所(Joint Quantum Institute)によると、研究者らは5キュービット分のイオンを封じ込めた装置を作成したという。また、同じ方法で100キュービット分まで拡張することが可能だという。詳細については、Natureに掲載された論文で解説されている。 デジタルコンピュータが計算処理を実行する際に用いる伝統的な1と0とは異なり、キュービットは1と0を重ね合わせた状態そのものを保持できるため、より多くの計算処理を並列して実行

    メリーランド大学、プログラム可能な量子論理ゲートを実現
  • [PDF]第4回 コンピュータの仕組み

  • コンピュータの仕組み - 教員のためのプログラミング入門

    コンピュータの誕生 コンピュータは日語では電子計算機と呼ばれます.最初のコンピュータはなにかという点については様々な議論があるのですが,一般的には1946年にペンシルバニア大学で公開されたENIACとされています.ENIACは弾道計算のために開発されたもので,人手では時間のかかる計算を高速に行えるようにすることを目指した,まさしく計算機でした.それまで計算機は歯車の組み合わせなど機械的な仕組みで作られていましたが,開発者の一人であるモークリーが,真空管を用いることで故障も少なく高速に計算を行える計算機ができるというアイデアを得て,電子計算機の誕生となったわけです. 一方,現在のコンピュータはノイマン型と呼ばれるもので,世界最初のノイマン型コンピュータということになると1949年英国ケンブリッジ大学で開発されたEDSACと言われています.EDSACは,ノイマン型の名前の所以となった数学者フ

    midnightseminar
    midnightseminar 2016/06/07
    コンピュータの原理で素人が気になるところが説明されている記事としては、一番よかった。
  • バイナリコードと機械語の違いってなんでしょうか? - 機械語はバイナリコードの1種ですが、全てのバイナリコードが機械語ではありません... - Yahoo!知恵袋

    機械語はバイナリコードの1種ですが、全てのバイナリコードが機械語ではありません。 「バイナリコード」は、文字通り、2進数値のみで表される値の集合です。 それは、機械語であったり、画像データであったり、音声データであったり、あるいは文字データであったり、さまざまです。 機械語とは、何らかの CPU が、解釈して実行出来るバイナリコードです。 ですので、機械語のことを「バイナリ」と言ったり、「バイナリコード」と言う事も、ままあります。 より厳格な言い方をすると、「あるバイナリコードの中の値が、ある CPU の命令デコーダによって解釈可能であるなら、そのバイナリコードは、その CPU の機械語として使える」、という事になります。 CPU が異なると、命令デコーダの仕様も異なってくるので、異なる CPU の間では、機械語に互換性が無くなってきます。 もちろん、CPU が「理解出来ない」バイナリコー

    バイナリコードと機械語の違いってなんでしょうか? - 機械語はバイナリコードの1種ですが、全てのバイナリコードが機械語ではありません... - Yahoo!知恵袋
  • 序章:UNIXとLinuxを振り返る(1/2)

    気が付くと「世の中はLinux」のようです。以前からUNIXを使っていた人なら大喜びなのですが、初めて触ったPCにはWindows 95がインストールされていた、という人にはハードルが高いことでしょう。そこで、今月から半年ほどかけて、MS-DOSプロンプトを使ったことがあるというレベルの人を対象にしたLinuxの入門記事をお届けすることになりました。インストールして終わりではなく、Linuxにおける常識というものを紹介できたらと思っています。 Linuxとは何か 常套手段ですが、まずはLinuxとは何か、という点からスタートしましょう。正確を期せば、LinuxとはPOSIXに準拠したカーネル部分の名称ということになります。とはいえ、大多数の人にとって、これでは何のことかさっぱり分からないはず。これで理解できる人なら、そもそもこの記事を読む必要はありません。 では、順を追って説明しましょう。

    序章:UNIXとLinuxを振り返る(1/2)
  • Why 'argument'?

  • PCCAA清書2

    このノートでは、個人で携帯可能な情報操作機器の出現と、子供たちと大人たちがその利用によって受ける影響についての考察を行ないます。まるで空想科学小説のようだと思われるでしょうけれど、現在の世の中の小型化と低価格化の趨勢を思えば、ここで議論される多くの概念が近いうちに現実化することは、ほぼ確実なことです。 長年にわたり、技術を活用して社会問題を救おうとするのがひとつの伝統でした:「スラムが問題?ならば低コストの住宅を作りましょう!」「テレビを買う余裕がない?では欲しい時に買えるように、安価なものを作りましょう。たとえ支払いが済む前に壊れるとしてもね!」「子供たちは学んでいないし、教育コストも高すぎる?では、あなたの子供たちがテストに合格するのを保証する、教育メカを作りましょう!」 残念ながら、これらの「救い」のほとんどは、単にサビの上にペンキを塗っているだけです。最初の問題の原因は残されたまま

  • SankeiBiz(サンケイビズ):自分を磨く経済情報サイト

    サービス終了のお知らせ SankeiBizは、2022年12月26日をもちましてサービスを終了させていただきました。長らくのご愛読、誠にありがとうございました。 産経デジタルがお送りする経済ニュースは「iza! 経済ニュース」でお楽しみください。 このページは5秒後に「iza!経済ニュース」(https://www.iza.ne.jp/economy/)に転送されます。 ページが切り替わらない場合は以下のボタンから「iza! 経済ニュース」へ移動をお願いします。 iza! 経済ニュースへ

    SankeiBiz(サンケイビズ):自分を磨く経済情報サイト
  • ポインタ(pointer)

    ポインタ (pointer) プログラミングBのページへ戻る メモリモデル 変数のメモリサイズとアドレス 変数のメモリサイズ 変数のアドレス 演習問題1 変数とポインタ アドレス演算子 & 間接参照演算子 * ポインタ型変数 配列とポインタ ポインタによる配列のアクセス ポインタ演算 演習問題2 ポインタへのポインタ レポート課題 コンピュータのメモリを自在にアクセスするために,C言語にはポインタという型がある。 また,C言語を習得しようとしている者にとって,最大の難関が,このポインタを理解して使いこなすことである。 プログラミングにおいてポインタが必要となるのは,次のような場合である。 関数に「参照渡し」という形で引数を渡す場合 ヒープ領域を使う場合 関数自体をデータとして扱う場合 しかし,そのどれも現段階では残念ながらまだ学習していない。 したがって,「何故ポインタが必要なのか」が分か

  • うっかりチューリング完全になっちゃったもの

    Accidentally Turing-Complete ― Andreas Zwinkau 来なら、チューリング完全となるべきではなかったものがある。これは、そのようなうっかりチューリング完全になってしまったものの例である。 C++テンプレート 当初はチューリング完全を目指していなかったが、C++テンプレートはチューリング完全になってしまった。その証明は、この論文にある(PDF) x86 MMU x86のpage fault handlingは、単純なマシンの実装に使える。原理としては、page faultが1 wordをスタックに積み、それによりアンダーフローを起こして別のトラップを生成する。この仕組みは、「減算して0以下ならば分岐」処理を実現する。チューリングマシンを実装するには十分である。デモ動画、講演動画 マジック・ザ・ギャザリング マジック・ザ・ギャザリングはカードゲームであ

  • HTML5 + CSSがチューリング完全であるという話 - 意識の高いコード

    この前非情報系の友人と飲んでいて話題に出そうとして出せなかった話。 その友人は以前HTMLがプログラミング言語だとうっかり情報系の先輩の前で口にしてしまい、当然のごとくそれは間違っているとツッコミを受けたそうだ。 そこで「実はHTML(+CSS)はチューリング完全と言えなくもないからプログラミングはできるんだよ!」というこの前聞いた話を振ろうとしたものの、相手はチューリングテストとチューリングマシンの違いも分かっていなかったので諦めたのだった。ウカツ! チューリングテストとチューリングマシン Ⓒ Duane Wessels 2012 どちらも計算機科学の発展に大きく寄与したアラン・チューリングによって考案された概念。 (でも中身は月とスッポンくらい違う) チューリングテストとは チューリングテストはある機械が知性を持つかどうかを判定するためにチューリング先生が考えだしたテストのこと。 どう

    HTML5 + CSSがチューリング完全であるという話 - 意識の高いコード
  • akita-nct.jp - このウェブサイトは販売用です! - 高専 秋田 ロボコン 機械 電気情報 リソースおよび情報

    This webpage was generated by the domain owner using Sedo Domain Parking. Disclaimer: Sedo maintains no relationship with third party advertisers. Reference to any specific service or trade mark is not controlled by Sedo nor does it constitute or imply its association, endorsement or recommendation.

    midnightseminar
    midnightseminar 2015/11/24
    リストと配列の違い
  • 第1回 GPUコンピューティングおよびCUDAについて | G-DEP

    第1回 「GPUコンピューティングおよびCUDAについて」 目次に戻る   |   第2回 >> 皆さん、「GPUコンピューティング」や「CUDA」を知っていますか?元々PCが好きな方はもちろん、そうでなくても近年のコンピューターの話題で耳にしたことがある方も多いかと思います。でも具体的にどういうものであるかを知らなかったり、実際に利用しているという人は少ないのではないでしょうか。 第1回は、そんなGPUコンピューティングとCUDAについてお話しします。ここで述べることはあくまで初心者に向けた概要であるため、もっと詳細にGPUコ ンピューティングのことを知りたいという方は、参考リンク先を下の方に貼り付けておきますので、良ければそちらもどうぞ! ちなみに、このコラムでは分かりやすくするためGPUコンピューティングをGPU汎用計算(GPGPU;General-purpose computing

  • 「型」の定義に挑む | POSTD

    科学はその方法論上のイメージよりもはるかに”ぞんざい”かつ”非合理的”なものである。 Paul Feyerabend著『Against Method(方法への挑戦)』(1975年) プログラミング言語は魅力的な分野です。それは、計算機科学(と論理)を 社会学や人間とコンピュータの相互作用 、科学的に定量化できない直感や嗜好、そして(良くも悪くも)政治などを含む分野と結び付けてくれるからです。 プログラミング言語を話題にする場合、たいてい何らかの客観的な真実を追求する科学的議論になってしまいます。科学は完璧のオーラに包まれているため、科学的質の核心部だけに集中し、他の部分を無視するのが正しいプログラミング言語の考え方だと単純に思ってしまうのも無理ありません。 しかし、これではプログラミング言語を面白くしている多くのものが除外されてしまいます。この隙間を埋める1つの方法は、科学の哲学に目を向

    「型」の定義に挑む | POSTD
  • 浮動小数点数型と誤差

    有限桁 C言語で扱える実数値は,2進数の有限小数で表された数値である.例えば次のようなものである. 1.5(10) = 1.1(2) 3.25(10) = 11.01(2) 理論的には小数が無限に続く値でも,そのうちの有限個の桁数でその値を表すしかない. 例えば,0.1 を2進数の小数で表すと 0.1(10) = 0.000110011001100110011...(2) と無限に続くが,コンピュータの内部では有限桁で丸められている. このような場合には,当の値ではなく,近似値でしか表すことができない. 指数表記(浮動小数点表記) 科学計算では非常に大きな実数値や非常に小さな実数値も扱うことがある. そのようなときには,通常の10進数の表記ではなくて,次のような指数表記で表すれば 無駄な 000...000 という桁を表記しなくてもよくなる. 1234567890000000000000

    浮動小数点数型と誤差
  • CPUに適度に間違わせることで節電する技術

    CPUに適度に間違わせることで節電する技術
  • コンピュータの原理について疑問があります。プログラムを組むと、その指令に従い機能するわけですが、そのプログラム自体は何により動かされるの... - Yahoo!知恵袋

    コンピュータの原理について疑問があります。 プログラムを組むと、その指令に従い機能するわけですが、そのプログラム自体は何により動かされるのでしょうか? コンピュータの原理について疑問があります。 プログラムを組むと、その指令に従い機能するわけですが、そのプログラム自体は何により動かされるのでしょうか? つまり、単なる金属とシリコンの組み合わせにすぎない半導体が、なぜプログラムを理解できるのでしょうか? すみませんが、ご回答よろしくお願いします。

    コンピュータの原理について疑問があります。プログラムを組むと、その指令に従い機能するわけですが、そのプログラム自体は何により動かされるの... - Yahoo!知恵袋