A int i fori0 i100 i yi xi

  • Slides: 51
Download presentation

解答 A int i; for(i=0; i<100; i++){ y[i] = x[i]; } 4

解答 A int i; for(i=0; i<100; i++){ y[i] = x[i]; } 4

だめな例 int main(){ void hoge(){ printf("hellon"); } printf("abcn"); } 6

だめな例 int main(){ void hoge(){ printf("hellon"); } printf("abcn"); } 6

論理回路 not and or xor 22

論理回路 not and or xor 22

論理回路 x y z xor and 入力 x 入力 y 出力 z 0 0

論理回路 x y z xor and 入力 x 入力 y 出力 z 0 0 0 0 1 1 1 0 0 1 1 1 1 0 24

全加算器 (full adder) A B Half S Adder C S C or C 35

全加算器 (full adder) A B Half S Adder C S C or C 35

4桁2進数同士の加算回路 A 0 B 0 A 1 B 1 HA C A 2 B

4桁2進数同士の加算回路 A 0 B 0 A 1 B 1 HA C A 2 B 2 FA C A 3 B 3 FA C S S S 0 S 1 S 2 S 3 S 4 38

A or B and C char lc 00(char a, char b, char, c){   return

A or B and C char lc 00(char a, char b, char, c){   return and(or(a, b), c); } 42

A B or and Y X not and S Z char ha_s(char a, char

A B or and Y X not and S Z char ha_s(char a, char b){ char x, y, z; x = or(a, b); y = and(a, b); z = not(y); return and(x, z); } 43

A B or and Y X not and S Z char ha_s(char a, char

A B or and Y X not and S Z char ha_s(char a, char b){ return and( or(a, b), not(and(a, b)) ); } 1文で書くと. 44

A B and C char ha_c(char a, char b){ return and(a, b); } 45

A B and C char ha_c(char a, char b){ return and(a, b); } 45

A B Half S Adder C X Ci Y Half S Adder C or

A B Half S Adder C X Ci Y Half S Adder C or S Z Co char fa_s(char a, char b, char ci){ char x; x = ha_s(a, b); return ha_s(x, c); } 46

A B Half S Adder C X Ci Y Half S Adder C or

A B Half S Adder C X Ci Y Half S Adder C or S Z Co char fa_c(char a, char b, char ci){ char x, y, z; x = ha_s(a, b); y = ha_c(a, b); z = ha_c(x, c); return or(z, y); } 47

4桁2進数同士の加算回路 A 0 B 0 A 1 B 1 HA C X A 2

4桁2進数同士の加算回路 A 0 B 0 A 1 B 1 HA C X A 2 B 2 FA C A 3 B 3 FA Y C FA Z C S S S 0 S 1 S 2 S 3 S 4 48

void adder( char a 3, char a 2, char a 1, char a 0,

void adder( char a 3, char a 2, char a 1, char a 0, char b 3, char b 2, char b 1, char b 0){ char s 4, s 3, s 2, s 1, s 0; char x, y, z; s 0 = ha_s(a 0, b 0); x = ha_c(a 0, b 0); 4桁2進数同士の 加算回路 s 1 = fa_s( a 1, b 1, x); y = fa_c( a 1, b 1, x); s 2 = fa_s( a 2, b 2, y); z = fa_c( a 2, b 2, y); 注意: 本関数は, 演算結果を返すのではなく 演算結果を表示する. s 3 = fa_s( a 3, b 3, z); s 4 = fa_c( a 3, b 3, z); printf("%d%d + ", a 3, a 2, a 1, a 0); printf("%d%d = ", b 3, b 2, b 1, b 0); printf("%d%d%dn", s 4, s 3, s 2, s 1, s 0); } 49

解答 B 0 0 or 1 1 not 1 0 0 1 and 0

解答 B 0 0 or 1 1 not 1 0 0 1 and 0 0 or 0 S 51