Silverback9

#야생으로

Creative Coding 독학 제153일 2024년08월27일(화)

오늘은 드디어! Wolfram의 1차원 Cellular Automata 코딩 공부를 시작하는 거예요~~!!!

YEAH~~~~!!!

Wolfram의 1차원 Cellular Automata의 핵심 Rule을 이해해 보는 시간을 가져 보고 싶어요~~^^*

아래 주소를 클릭하여 [rule 0]부터 [rule 255]까지를 가볍게 구경해 보셔도 좋을 것 같습니다~~^^*

Elementary Cellular Automaton — from Wolfram MathWorld

뭔가 재미있는 그림들이 각 rule과 연결되어 있지요~~^^*?

그런데요…..

왜 rule의 번호가 0부터 255까지 있을까요????

제가 질문 한 세트 드리겠습니다~~~^^*

2의 0승은?                           2^(0) = 2^(1-1) = 2^1/2^1 = 1
2의 1승은?                           2^(1) = 2
2의 2승은?                           2^(2) = 2*2 = 4
2의 3승은?                           2^(3) = 2*2*2 = 8
2의 4승은?                           2^(4) = 2*2*2*2 = 16
2의 5승은?                           2^(5) = 2*2*2*2*2 = 32
2의 6승은?                           2^(6) = 2*2*2*2*2*2 = 64
2의 7승은?                           2^(7) = 2*2*2*2*2*2*2 = 128

아 참! 혹시 2의 0승이 왜 1인지…너무 어릴 때 배워서 기억이 가물가물하시다면~~ 2의 0승이 1인 이유 (tistory.com)

제가 질문 한 세트 또! 드리겠습니다~~^^*

2^0은?                                            1 = 1 
2^0 + 2^1은?                                      1+2 = 3
2^0 + 2^1 + 2^2는?                                1+2+4 = 5
2^0 + 2^1 + 2^2 + 2^3은?                          1+2+4+8 = 15
2^0 + 2^1 + 2^2 + 2^3 + 2^4는?                    1+2+4+8+16 = 31
2^0 + 2^1 + 2^2 + 2^3 + 2^4 + 2^5는?              1+2+4+8+16+32 = 63
2^0 + 2^1 + 2^2 + 2^3 + 2^4 + 2^5 + 2^6은?        1+2+4+8+16+32+64 = 127
2^0 + 2^1 + 2^2 + 2^3 + 2^4 + 2^5 + 2^6 + 2^7은?  1+2+4+8+16+32+64+128 = 255

네~^^* 2의 거듭제곱의 세계와 10의 거듭제곱의 세계가 점점 연결되어 가고 있네요~~^^*

우리가 일상생활에서는 10의 거듭제곱의 세계인 십진법를 많이 쓰고 있는데요~ 컴퓨터 코딩 생활에서는 2의 거듭제곱의 세계인 이진법을 많이 쓴다고 해요~

왜 그럴까요~~?

아하! 트랜지스터가 켜짐/꺼짐 On/Off 두 가지 상태만을 표현할 수 있기 때문이군요!!

자 그럼~~ 트랜지스터가 켜짐/꺼짐 _ On/Off_ 1/0로 표현하는 이진법을 좀더 공부해 봅시다~~^^*

십진법을 잘 이해하는 것은 이진법을 잘 이해하는 것에 많은 도움을 주네요~~!!

네~^^* 십진수를 2로 계속 나누어 가며 나머지 값들을 챙겨야겠네요~

네~^^* 이진법의 가중치에 맞게 각 자리에 0과 1을 적절히 사용해서 표현해도 되구요~

이제 도전!!! 십진수 0부터 255까지를 이진수로 표현해 볼까요~~^^*

 0        00000000(2)
 1        00000001(2)
 2        00000010(2)
 3        00000011(2)
 4        00000100(2)
 5        00000101(2)
 6        00000110(2)
 7        00000111(2)
 8        00001000(2)
 9        00001001(2)
10        00001010(2)
11        00001011(2)
12        00001100(2)
13        00001101(2)
14        00001110(2)
15        00001111(2)
16        00010000(2)
17        00010001(2)
18        00010010(2)
19        00010011(2)
20        00010100(2)
21        00010101(2)
22        00010110(2)
23        00010111(2)
24        00011000(2)
25        00011001(2)
26        00011010(2)
27        00011011(2)
28        00011100(2)
29        00011101(2)
30        00011110(2)
31        00011111(2)
32        00100000(2)
33        00100001(2)
34        00100010(2)
35        00100011(2)
36        00100100(2)
37        00100101(2)
38        00100110(2)
39        00100111(2)
40        00101000(2) 
41        00101001(2)
42        00101010(2)
43        00101011(2)
44        00101100(2)
45        00101101(2)
46        00101110(2)
47        00101111(2)
48        00110000(2)
49        00110001(2)
50        00110010(2)
51        00110011(2)
52        00110100(2)
53        00110101(2)
54        00110110(2)
55        00110111(2)
56        00111000(2)
57        00111001(2)
58        00111010(2)
59        00111011(2)
60        00111100(2)
61        00111101(2)
62        00111110(2)
63        00111111(2)
64        01000000(2)
65        01000001(2)
66        01000010(2)
67        01000011(2)
68        01000100(2)
69        01000101(2)
70        01000110(2)
71        01000111(2)
72        01001000(2)
73        01001001(2)
74        01001010(2)
75        01001011(2)
76        01001100(2)
77        01001101(2)
78        01001110(2)
79        01001111(2)
80        01010000(2)
81        01010001(2)
82        01010010(2)
83        01010011(2)
84        01010100(2)
85        01010101(2)
86        01010110(2)
87        01010111(2)
88        01011000(2) 
89        01011001(2)
90        01011010(2)
91        01011011(2)
92        01011100(2)
93        01011101(2)
94        01011110(2)
95        01011111(2)
96        01100000(2)
97        01100001(2)
98        01100010(2)
99        01100011(2)
100       01100100(2)
101       01100101(2)
102       01100110(2)
103       01100111(2)
104       01101000(2)
105       01101001(2)
106       01101010(2)
107       01101011(2)
108       01101100(2)
109       01101101(2)
110       01101110(2)
111       01101111(2)
112       01110000(2)
113       01110001(2)
114       01110010(2)
115       01110011(2)
116       01110100(2)
117       01110101(2)
118       01110110(2)
119       01110111(2)
120       01111000(2)
121       01111001(2)
122       01111010(2)
123       01111011(2)
124       01111100(2)
125       01111101(2)
126       01111110(2)
127       01111111(2)
128       10000000(2)

넵~~~ 2^0 자리부터 1씩을 더하며 자리올림을 차근히 하니까 어느새 128까지 왔네요~ 이제 얼마 안남았어요~~

근데요~~ 제가 지금 자리를 옮겨야 해서요~~ 곧 다시 만나요~~^^*

즐거운 아침이 시작되었습니다~~!! 곧 돌아올게요~~~^^*

넵!! 돌아 왔습니다~~^^* 계속 해 보겠습니다~~^^*

 
129       10000001(2)
130       10000010(2)
131       10000011(2)
132       10000100(2)
133       10000101(2)
134       10000110(2)
135       10000111(2)
136       10001000(2)
137       10001001(2)
138       10001010(2)
139       10001011(2)
140       10001100(2)
141       10001101(2)
142       10001110(2)
143       10001111(2)
144       10010000(2)
145       10010001(2)
146       10010010(2)
147       10010011(2)
148       10010100(2)
149       10010101(2)
150       10010110(2)
151       10010111(2)
152       10011000(2)
153       10011001(2)
154       10011010(2)
155       10011011(2)
156       10011100(2)
157       10011101(2)
158       10011110(2)
159       10011111(2)
160       10100000(2)
161       10100001(2)
162       10100010(2)
163       10100011(2)
164       10100100(2)
165       10100101(2)
166       10100110(2)
167       10100111(2)
168       10101000(2) 
169       10101001(2)
170       10101010(2)
171       10101011(2)
172       10101100(2)
173       10101101(2)
174       10101110(2)
175       10101111(2)
176       10110000(2)
177       10110001(2)
178       10110010(2)
179       10110011(2)
180       10110100(2)
181       10110101(2)
182       10110110(2)
183       10110111(2)
184       10111000(2)
185       10111001(2)
186       10111010(2)
187       10111011(2)
188       10111100(2)
189       10111101(2)
190       10111110(2)
191       10111111(2)
192       11000000(2)
193       11000001(2)
194       11000010(2)
195       11000011(2)
196       11000100(2)
197       11000101(2)
198       11000110(2)
199       11000111(2)
200       11001000(2)
201       11001001(2)
202       11001010(2)
203       11001011(2)
204       11001100(2)
205       11001101(2)
206       11001110(2)
207       11001111(2)
208       11010000(2)
209       11010001(2)
210       11010010(2)
211       11010011(2)
212       11010100(2)
213       11010101(2)
214       11010110(2)
215       11010111(2)
216       11011000(2) 
217       11011001(2)
218       11011010(2)
219       11011011(2)
220       11011100(2)
221       11011101(2)
222       11011110(2)
223       11011111(2)
224       11100000(2)
225       11100001(2)
226       11100010(2)
227       11100011(2)
228       11100100(2)
229       11100101(2)
230       11100110(2)
231       11100111(2)
232       11101000(2)
233       11101001(2)
234       11101010(2)
235       11101011(2)
236       11101100(2)
237       11101101(2)
238       11101110(2)
239       11101111(2)
240       11110000(2)
241       11110001(2)
242       11110010(2)
243       11110011(2)
244       11110100(2)
245       11110101(2)
246       11110110(2)
247       11110111(2)
248       11111000(2)
249       11111001(2)
250       11111010(2)
251       11111011(2)
252       11111100(2)
253       11111101(2)
254       11111110(2)
255       11111111(2)
256      100000000(2)

네~~^^* 십진수 255는 이진법으로 11111111(2)가 되는군요~^^*

십진수 0에서 255까지 컴퓨터로 표현하려면 트랜지스터가 8개 필요하겠네요~^^*

십진수 0에서 256까지 컴퓨터로 표현하려면 트랜지스터가 9개 필요하구요~^^*

Wolfram의 Rule은 0에서 255까지 있는데요~~^^* 이것을 이진법으로 표현하면~~

00000000(2) 부터 11111111(2)까지 나타낼 수 있을 것 같네요.

네~~ 8 자리 이진수로 표현할 수 있어요~~^^*

오늘 저와 함께 10진법과 2진법에 대해 공부해 주셔서 감사합니다~~^^*

내일은 우리 함께 [Wolfram의 Rule 0 ~ 255]를 이진법으로 표현하는 코드를 만들어 보도록 할게요~^^*

(1)이진법 가중치에 맞게 숫자를 직접 대입하는 코드~

(2) 나눗셈의 나머지를 챙겨서 이진법으로 변환하는 코드~

이 두 가지 코드를 공부해 보도록 하겠습니다~~

오늘도 멋진 아침! 멋진 하루! 보내시고요~^^* 우리 내일 또 만나요~^^*

피와 살을 가진 우리가, 0과 1의 세계에 사는 컴퓨터와 함께 아름다운 예술을 만들 수 있을까요? 우리의 따뜻함과 컴퓨터의 차가움이 만나 멋진 작품이 만들어 지면 좋겠어요~~^^*

우리와 컴퓨터 사이에 놓인 간극을 우리의 창의성으로 조금씩 좁혀나가 볼까요~~^^*

네~~!!! 꿈은 이루어 집니다~~~!!!

댓글 남기기