C.W.K.
Stream
Lesson 02 of 05 · published

DNA 가 코드야 — 생명을 돌리는 네 글자 알파벳

~30 min · dna, code, compilation

Level 0호기심 입문
0 XP0/43 lessons0/12 achievements
0/100 XP to next level100 XP to go0% complete

가장 복잡한 것의 가장 단순한 시각

DNA 는 네 글자 의 긴 문자열이야 — A, T, C, G (아데닌, 티민, 시토신, 구아닌). 그게 다야. 모든 생물의 전 게놈 — 식물, 동물, 미생물 — 이 네 글자의 sequence, 수십억 글자 길이.

같은 알파벳을 소프트웨어에 적을 수 있어:

genome = "ATCGGTAGCTAATCG..."

A, T, C, G 의 string 이 구조적으로 프로그램이야. 비유로 프로그램인 게 아니라, 문자 그대로 — 분자 기계가 *읽고* *실행* 해서 단백질을 생산하는 sequence, 단백질이 다른 모든 걸 짓는 거.

컴파일 단계

네 글자 문자열이 어떻게 다리, 눈, 신장이 돼? 답이 우주에서 가장 아름다운 컴파일/실행 파이프라인이야.

  1. 읽기. DNA 한 영역이 RNA (비슷한 string, T 대신 U) 로 *전사*. RNA 가 작업 사본.
  2. 컴파일. RNA 의 세 글자 chunk (*코돈*) 가 20 아미노산 중 하나에 매핑. AUG = "시작, 또한 메티오닌". UAA = "멈춤". 매핑이 고정 lookup 테이블 — *유전 코드*, 지구상 거의 모든 생명에서 동일.
  3. 실행. 아미노산이 단백질로 묶임. 단백질이 3D 모양으로 접힘. 모양이 기능을 결정. 기능이 세포 안에서 뭐가 일어나는지 결정.

20 아미노산 알파벳이 4 글자 source 에서 컴파일, 단백질을 짓고, 단백질이 세포로 모이고, 세포가 장기로, 장기가 우리로. 위로 올라가는 컴파일러 스택이야.

공유된 유전 코드가 등골을 오싹하게 해

여기가 멈출 자리야. 코돈 → 아미노산 매핑 — 유전 코드 — 가 지구상 모든 생물에서 거의 동일. 박테리아부터 고래부터 참나무까지. AUG 가 우리 세포에서 메티오닌 + "시작". 토마토에서 같은 뜻. 곰벌레에서 같은 뜻.

이건 지구상 모든 생물이 공통 조상 — 단일 세포, 수십억 년 전 — 을 공유한다는 뜻이고, 그 이후 같은 코드 베이스를 remix 해온 거야. 당신과 미국삼나무가 컴파일러를 공유해. 다른 입력, 다른 출력, 같은 스택.

다음 lesson 이 여는 것

DNA 가 코드고 유전 코드가 공유라면, 진화는 그저 시간 따라 source 의 변화, 자연선택이 brutal QA pass 로 작동하는 거지. 그게 다음 lesson — 진화가 상속 + 오버라이드.

Code

DNA 가 문자 그대로의 string·python
# DNA 는 구조적으로 네 글자 알파벳의 string.
genome_fragment = "ATGGCCATCAGT"  # 전체는 수십억 글자

# 세 글자 코돈 읽기 — 각각 20 아미노산 중 하나에 매핑
genetic_code = {
    "ATG": "Met (start)", "GCC": "Ala", "ATC": "Ile", "AGT": "Ser",
    # ... 64 코돈, 20 아미노산 + start/stop 으로 매핑
}

for i in range(0, len(genome_fragment), 3):
    codon = genome_fragment[i:i+3]
    print(codon, "->", genetic_code.get(codon, "?"))

External links

Exercise

좋아하는 동물의 게놈 크기를 찾아봐. 자기 거 (~30 억 글자) 와 비교해. 거의 모든 동물 게놈 크기가 얼마나 비슷한지, 밑의 명령어 세트가 얼마나 공유되는지 알아채. 종 사이 차이 대부분이 *어느 섹션이 언제 읽히나* — 비슷한 코드의 다른 read 야.

Progress

Progress is local-only — sign in to sync across devices.
이 페이지에서 버그를 발견하셨거나 피드백이 있으세요?문제 신고

댓글 0

🔔 답글 알림 (로그인 필요)
로그인댓글을 남기려면 로그인해 주세요.

아직 댓글이 없어요. 첫 댓글을 남겨보세요.