言語プロセッサ 2007 平成 19 年9月 26 日(水)
DESCRIPTION
言語プロセッサ 2007 平成 19 年9月 26 日(水). 東京工科大学 コンピュータサイエンス学部 亀田弘之. 情報システム. 複雑だなぁ. セキュリティ. ネットワーク. モバイル. Divide and Conquer (困難は分割し、しかる後に統合せよ!). 何が基本なのかなぁ?. ディスプレイ. 本体. キーボード. 出力 (Output). 処理. 入力 (Input). 本体内部が大切!. main( ){ int a; a = 1; printf(“%d”,a); }. 高水準言語 ー> 論理回路. ?. - PowerPoint PPT PresentationTRANSCRIPT
![Page 1: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/1.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
言語プロセッサ 2007平成 19 年9月 26 日(水)
東京工科大学コンピュータサイエンス学部
亀田弘之
![Page 2: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/2.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
![Page 3: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/3.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
情報システム
![Page 4: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/4.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
![Page 5: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/5.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
セキュリティネットワーク
モバイル
複雑だなぁ複雑だなぁ
![Page 6: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/6.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
Divide and Conquer
(困難は分割し、しかる後に統合せよ!)
![Page 7: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/7.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
何が基本なのかなぁ?何が基本なのかなぁ?
![Page 8: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/8.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
ディスプレイ
キーボード
本体
![Page 9: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/9.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
出力 (Output)
入力 (Input)
処理
![Page 10: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/10.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
• 本体内部が大切!
![Page 11: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/11.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
![Page 12: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/12.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
![Page 13: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/13.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
![Page 14: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/14.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
![Page 15: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/15.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
![Page 16: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/16.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
高水準言語 ー> 論理回路
main( ){
int a;
a = 1;
printf(“%d”,a);
}
??
高 水 準 言 語
論 理 回 路
![Page 17: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/17.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
論理回路
![Page 18: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/18.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
言語プロセッサとは高水準言語によるプログラム (処理手順の記述 , 命令群) -> 論理回路制御指令群
(注)・命令: command ・指令: instruction
![Page 19: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/19.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
言語プロセッサとは高水準言語によるプログラム (処理手順の記述 , 命令群) -> 論理回路制御指令群
(注)・命令: command ・指令: instruction
言語プロセッサ
![Page 20: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/20.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
C言語・ Java 言語アセンブリ言語
![Page 21: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/21.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
main(){
}
![Page 22: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/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: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/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: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/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: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/25.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
• $ gcc -S filename.c
• $ ls
• $ cat filename.s
![Page 26: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/26.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
ソース言語
読み込み
字句解析
構文解析
中間語生成
コード生成
目的言語
![Page 27: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/html5/thumbnails/27.jpg)
Copyright© 2007 School of Computer Science, Tokyo University of Technology
言語プロセッサの種類1. インタープリタ ( interpreter )2. コンパイラ (compiler)
![Page 28: 言語プロセッサ 2007 平成 19 年9月 26 日(水)](https://reader033.vdocuments.site/reader033/viewer/2022061323/5681499e550346895db6dfa0/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