タグ

compilerに関するdevelopmasoのブックマーク (6)

  • 「コンピュータシステムの理論と実装」をやりきりました - Qiita

    コンピュータシステムの理論と実装 をやりきったので、メモを残しておきます。 の紹介 コンピュータシステムの理論と実装 では、NAND ゲートからはじめて、最終的にはアプリケーションを動作させるところまで、ボトムアップの視点でコンピュータシステムの説明が記載されています。通称「Nand2Tetris」。名前がかっこいいですね。 とてもわかりやすい裏書きの説明は以下 コンピュータを理解するための最善の方法はゼロからコンピュータを作ることで、その構成要素は、ハードウェア、ソフトウェア、コンパイラ、OSに大別できる。書では、これらの構成要素をひとつずつ組み立てる。具体的には、NANDという電子素子からスタートし、論理ゲート、加算器、CPUを設計。オペレーティングシステム、コンパイラ、バーチャルマシンなどを実装しコンピュータを完成させて、最後にその上でアプリケーション(テトリスなど)を動作させる

    「コンピュータシステムの理論と実装」をやりきりました - Qiita
  • お薦めのコンパイラの本とか | κeenのHappy Hacκing Blog

    κeenです。たまにお薦めコンパイラの教えてなどのやりとりをTwitterで見かけるのでまとめておきます。 私の主観が入っているので他の方の意見も参考にして下さい。 普通の入門書三書 よく挙げられるのは通称「ドラゴンブック」、「タイガーブック」、「中田先生の最適化なんちゃらの」です。 このうちのどれかを読むと良いでしょう。 こういう教科書系のによくあることですが、だけでなく挙げられている参考文献の情報も重要なので読み終わっても売らないで棚に残しておくことをお薦めします。 コンパイラ[第2版]~ 原理・技法・ツール ~ いわゆるドラゴンブックです。結構古くからあるです。前半が構文解析の理論で、後半でコンパイラ関連の技法などが載っています。 割と技法の紹介が多く、幅は広いですがそれぞれの説明に割かれた紙面は小さいです。 章分けが雑なので目次だけで内容を判断せず、手にとって確かめたほ

    お薦めのコンパイラの本とか | κeenのHappy Hacκing Blog
  • アセンブリに触れてみよう - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article?

    アセンブリに触れてみよう - Qiita
  • 低レイヤーを学ぶための技術書をまとめてみる - Qiita

    Deleted articles cannot be recovered. Draft of this article would be also deleted. Are you sure you want to delete this article? 半年前から低レイヤーに関する勉強をしている。 その中で読んだ技術書の感想、そしておすすめの読む順番をここにまとめてみる。 OS 30日でできる! OS自作入門 おすすめ度:80(満点100) 一言:自作OSの初心者向け 自作OSでまず初めに候補に挙がるのがこの。2006年に出版されたではあるが、OSの根幹を理解するにはとても良い。最初からアセンブリでメモリ操作をがっつり書くため、アセンブリの経験やレジスタ周りの知識が無いと挫折してしまうかも知れない。そこを乗り越えれば楽しくOSを実装していける。 コンピュータシステムの理論と実装 ―

    低レイヤーを学ぶための技術書をまとめてみる - Qiita
  • アプリケーションエンジニアのための低レイヤ入門 - Qiita

    はじめに 今年のはじめに話題になった CPU 脆弱性の解説サイトを読んで最適化のための投機的実行について知り、来は実行されるはずのない処理があらかじめ実行されるとかどういうこと?と驚き、低レイヤの世界ではよくわからないワンダーなことが行われているのだなあと興味を持ちました。 この記事ではそんな低レイヤワンダーランドについて勉強してみたので、普段は高レイヤなアプリケーションを作っていて低レイヤは専門ではありませんよという自分と同じような人向けに入門的なことを雑に書いていきます。 取り扱うのは高水準言語からアセンブラ、機械語、プロセッサくらいまででソフトウェアの部分が主になります。 高水準言語はどうやって実行されるのか まずは高水準言語がコンパイルされて CPU で実行されるまでのざっくりとした流れを見てみます。 高水準言語としてはここでは C 言語を例にあげています。 C 言語のコードはコ

    アプリケーションエンジニアのための低レイヤ入門 - Qiita
  • 低レイヤを知りたい人のための Cコンパイラ作成入門

    はじめに このオンラインブックは執筆中です。完成版ではありません。フィードバックフォーム このには一冊のに盛り込むにはやや欲張りな内容を詰め込みました。書では、C言語で書かれたソースコードをアセンブリ言語に変換するプログラム、つまりCコンパイラを作成します。コンパイラそのものもCを使って開発します。当面の目標はセルフホスト、すなわち自作コンパイラでそれ自身のソースコードをコンパイルできるようにすることです。 このでは、コンパイラの説明の難易度が急に上がりすぎないように、様々なトピックを書全体を通じて次第に掘り下げていくという形で説明することにしました。その理由は次のとおりです。 コンパイラは、構文解析、中間パス、コード生成といった複数のステージに概念的に分割することができます。よくある教科書的アプローチでは、それぞれのトピックについて章を立てて解説を行うことになりますが、そのよう

  • 1