copyright© 2007 school of computer science, tokyo university of technology 言語プロセッサ...
TRANSCRIPT
![Page 1: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/1.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
言語プロセッサ 2007平成 19 年9月 26 日(水)
東京工科大学コンピュータサイエンス学部
亀田弘之
![Page 2: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/2.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
![Page 3: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/3.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
情報システム
![Page 4: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/4.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
![Page 5: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/5.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
セキュリティネットワーク
モバイル
複雑だなぁ複雑だなぁ
![Page 6: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/6.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
Divide and Conquer
(困難は分割し、しかる後に統合せよ!)
![Page 7: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/7.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
何が基本なのかなぁ?何が基本なのかなぁ?
![Page 8: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/8.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
ディスプレイ
キーボード
本体
![Page 9: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/9.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
出力 (Output)
入力 (Input)
処理
![Page 10: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/10.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
• 本体内部が大切!
![Page 11: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/11.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
![Page 12: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/12.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
![Page 13: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/13.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
![Page 14: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/14.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
![Page 15: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/15.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
![Page 16: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/16.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
高水準言語 ー> 論理回路
main( ){
int a;
a = 1;
printf(“%d”,a);
}
??
高 水 準 言 語
論 理 回 路
![Page 17: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/17.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
論理回路
![Page 18: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/18.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
言語プロセッサとは高水準言語によるプログラム (処理手順の記述 , 命令群) -> 論理回路制御指令群
(注)・命令: command ・指令: instruction
![Page 19: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/19.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
言語プロセッサとは高水準言語によるプログラム (処理手順の記述 , 命令群) -> 論理回路制御指令群
(注)・命令: command ・指令: instruction
言語プロセッサ
![Page 20: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/20.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
C言語・ Java 言語アセンブリ言語
![Page 21: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/21.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
main(){
}
![Page 22: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/22.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
$ cat p01.s .file "p01.c" .def ___main; .scl 2; .type 32; .endef .text.globl _main .def _main; .scl 2; .type 32; .endef_main: pushl %ebp movl %esp, %ebp subl $8, %esp andl $-16, %esp movl $0, %eax movl %eax, -4(%ebp) movl -4(%ebp), %eax call __alloca call ___main leave ret
![Page 23: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/23.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
main(){
int a;
a = 20;
a = a + 30;
a = 100 - a;
a = a*7;
}
![Page 24: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/24.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
$ cat p01.s .file "p01.c" .def ___main; .scl 2; .type
32; .endef .text.globl _main .def _main; .scl 2; .type 32;
.endef_main: pushl %ebp movl %esp, %ebp subl $8, %esp andl $-16, %esp movl $0, %eax movl %eax, -8(%ebp) movl -8(%ebp), %eax call __alloca call ___main
movl $20, -4(%ebp) leal -4(%ebp), %eax addl $30, (%eax) movl $100, %eax subl -4(%ebp), %eax movl %eax, -4(%ebp) movl -4(%ebp), %edx movl %edx, %eax sall $3, %eax subl %edx, %eax movl %eax, -4(%ebp) leave ret
![Page 25: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/25.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
• $ gcc -S filename.c
• $ ls
• $ cat filename.s
![Page 26: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/26.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
ソース言語
読み込み
字句解析
構文解析
中間語生成
コード生成
目的言語
![Page 27: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/27.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
言語プロセッサの種類1. インタープリタ ( interpreter )2. コンパイラ (compiler)
![Page 28: Copyright© 2007 School of Computer Science, Tokyo University of Technology 言語プロセッサ 2007 平成 19 年9月 26 日(水) 東京工科大学 コンピュータサイエンス学部](https://reader035.vdocuments.net/reader035/viewer/2022062407/56649f555503460f94c795a8/html5/thumbnails/28.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
コンパイラの処理(例)• X = Y*3.14 + X/Y
• A = (A + B)*C + B