고민 상담 판

즐겨찾기
최근 방문 게시판

컴퓨터는 c언어를 어떻게 알아들어??

b396833b 2021.02.26 252

파이썬 ,c++이런 프로그램은 어떻게 만든거야?? 설명이 이상하긴 한데  예를 들면

 

난 아랍어를 전혀 모르는데 아랍인이 나한테 뭐라뭐라 하면 알수가 없잖아 

 

근데 뭘했더니 알아들을수가 있더라 에서 

 

뭘 했더니는 대체 어떻게 한걸까?

 

컴퓨터가 지능이 있을리도 없고 오른쪽이란 개념을 어떻게 집어 넣을수 있는걸까 너무 궁금함  아랍어로 아무리 오른쪽이라 말해도 난 그게 뭔지 모를거 아녀 

 

 

설명 참 답답하게해서 미안해유 컴공과 형님덜

20개의 댓글

948dca2d
2021.02.26

기계어로 번역해서 알아들어

0
0370b539
2021.02.26

대충 구글 번역기에 작성한다고 생각하셈

프로그래밍 하는 툴이 번역기고 거기다가 한글로 쌸라쌸라하면 그 아래 번역된거 나오잖음

그렇게 컴퓨터 언어로 변환해서 쓰는거

0
152aafc4
2021.02.26

몇단계로 번역을 거칩니다요

0
5629e16d
2021.02.26

아랍인이랑 나 사이에 번역해주는 사람이 있다고 생각하면 됨. 그게 컴파일러임

0
4ef10d71
2021.02.26

정말 쉽게 말하면 c언어는 번역기라고 생각하면됨

번역기에 오른쪽이라고 입력하면 아랍어로 오른쪽이라는 뜻의 단어가 나오잖아

이거처럼 니가 c언어로 오른쪽이라고 입력하면 캄퓨터가 알아들을수 있는 기계어라는걸로 번역해서 입력해주는거임

0
4ef10d71
2021.02.26
@4ef10d71

니가 궁금해하는 뭘했더니는 뭘한게 아니라 아랍어를 잘하는사람이 오른쪽이라고 입력하면 아랍어의 오른쪽을 의미하는 단어가 나오게 약속을 해놓은 거임 번역기에 설정을 하는거처럼 말이야

0
b396833b
2021.02.26
@4ef10d71

여기까진 이해가능 그럼 번역기라고 한다면 한국어로 번역이 될꺼 아니야 그럼 그 한국어는 누가 내 머릿속에 오른쪽은 ~다 라고 설정해 놓은거야??

 

답답하지 ㅠㅠ 컴이라곤 롤밖에 몰라서 그래ㅠㅠ

0
4ef10d71
2021.02.26
@b396833b

ㅇㅇ 다 설정해놓은거지 그래서 코딩에 규칙이 있는거임 다 설정해놓은거니까

0
24c4af1a
2021.02.26

프로그래밍 언어는 컴퓨터보다 먼저나옴

옛날에 기계로 수학식을 빠르게 풀지는 취지에서 나왔던걸로 아는데 이걸 전자부품이랑 연결하다보니 켜졌다(1) 꺼졌다(0) 밖에 못 알아들으니 2진수로밖에 짤 수 없었던거지

 

이 구조랑 알고리즘들이 쌓여서 현재의 프로그래밍 언어가 된거고

0
b396833b
2021.02.26
@24c4af1a

10의 조합으로 컴퓨터가 오른쪽이 오른쪽이란 개념을 가지게 된다는게 제 아둔한 머리론 이해가 안갖니다...ㅠ

0
316bd1c7
2021.02.26
@b396833b

스위치가 있잖아 1이 켜진 상태고 0이 꺼진 상태라고 규정한거임

0
316bd1c7
2021.02.26
@316bd1c7

여기서 발전시켜서 2진수 -> 10진수 -> 16진수로 가는거고

0
5629e16d
2021.02.26
@b396833b

컴퓨터가 오른쪽이란 개념을 갖고 동작하는게 아니라 프로그래머가 논리적으로 오른쪽 왼쪽을 구분해서 구현하는거임.

0
c6b5ad28
2021.02.26

10001111101110110101010101010110010110110100000101

0
7b84b2b7
2021.02.26

c언어가 어셈블리어로 바뀌는과정...

그거는 4학년때 컴파일러 수업 들으면 알 수 잇습니다

 

아니 그래서 0이랑 1을 어케 컴퓨터가 받아들이냐고?

그거는 전자과로 전과하십시오

0
46b42b53
2021.02.26

내가 컴퓨터 언어학 개론 조교 해봐서 대충 설명해줌

 

먼저

int a = 10;

int b = 10;

a = a + b;

라는 코드가 있다 치자

 

그러면 어휘분석기 (lexer)가 저 코드를 토큰화 시킴

[identifier(int), identifier(a), operator(=), integer(10), operator(;), identifier(int), identifier(b), operator(=), integer(10), operator(;), identifier(a), operator(=), identifier(a), operator(+), identifier(b), operator(;)]

이런식으로 토큰 리스트가 만들어지는거야

 

이걸가지고 구문분석기(parser)는 AST 트리구조로 바꿔버림

Source

ㄴDeclaration(Type(int), Variable(a), Integer(10))

ㄴDeclaration(Type(int), Variable(b), Integer(10))

ㄴAssignment(Variable(a), BinaryOp(+, a, b))

대충 이렇게 만들어짐

 

여기까지 만들어졌으면 이제 더 낮은 언어로 1대1 번역하기가 쉽겠지

 

어셈블리어로 번역한다고 하면

mov r0 10 // 레지스터 0에 10 저장

mov r1 10 // 레지스터 1에 10저장

add r0 r0 r1 //레지스터 0에 둘 더한거 저장

 

오랜만에 써서 까먹었는데 대충 이렇게 되겠지

 

어셈블리어는 기계어랑 1대1 대응이 돼서 저 코드가

 

0001111 00000000 00000110

0001111 00000001 00000110

0001101 00000000 00000000 00000001

 

이런식으로 바뀌고 컴퓨터 회로가 저걸 보면서 처리를 할 수 있게 되는거야

1
b396833b
2021.02.26
@46b42b53
3
bdd43ecc
2021.02.26
@b396833b

ㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋㅋ

0
2a030ee4
2021.02.26

쉽게 말해서 전세계 모든 컴퓨터는 0과 1로만 되어있는 컴퓨터 언어는 다 알아들어. 이걸 기계어라고 함

근데 기계어는 사람이 읽을수 없기 때문에 예를들어 text = 00100110 이런식으로 번역어를 만들어 놓는거야

그걸 프로그래밍 언어라고 하는거고 모든 프로그래밍 언어는 마지막에 컴파일이라는 기계어 번역 과정이 반드시 들어감

그래서 C언어와 C언어 컴파일러는 항상 세트로 붙어있음

C언어로 코드를 다 짜면 마지막에 text = 00100110 이렇게 C언어 컴파일러가 기계어로 번역해주고 그러면 기계는 그 프로그램을 돌릴수 있는거임

 

인간의 언어는 영어도 전세계 보급률이 40%도 안되지만 컴퓨터의 기계어는 전세계 보급률이 100%인거임

0
b396833b
2021.02.26
@2a030ee4
0
무분별한 사용은 차단될 수 있습니다.
번호 제목 글쓴이 날짜 조회 수
405242 선글라스 모델 선택 고민 0cde31c2 6 분 전 8
405241 여유증 수술 고민 1 dc2b3d1a 7 분 전 30
405240 일단 몸무게만 들었을 때 몇 kg부터 중량급이란 느낌이 남? 5 d35cd349 41 분 전 89
405239 여기 빠지 어딘지 아는 사람 있을까?? 6 0522a9ec 45 분 전 88
405238 착한아이 컴플렉스 거절못하는 사람 4 c65ed2cf 1 시간 전 133
405237 회사에 경조사비 은근 부담스럽네.. 8 08bd317c 1 시간 전 222
405236 운전할지 고민된다 4 31bf602f 1 시간 전 63
405235 인성 터진 직원은 자꾸 깎아내리려 하고 2 dbab47c1 1 시간 전 89
405234 제일 깊숙한 어금니 임플란트 지르콘vsPFM 6 cdc24add 1 시간 전 60
405233 중도 퇴사자 연말정산 고민 5 e22313e5 1 시간 전 102
405232 전에는 애니 신작만 봐도 행복했는데 5 d89fcb15 2 시간 전 91
405231 닭가슴살 첨 삶아보는데 이렇게삶는거 맞아? 7 2fa1a7f5 2 시간 전 152
405230 🦷 이 크라운 고민 16 6ae3fdef 2 시간 전 133
405229 천천히 멀어지는 법있음? 4 e3895c51 2 시간 전 128
405228 이거 고백의 타이밍을 모르겠다 4 1f08d564 2 시간 전 125
405227 인강들을떄 졸린사람있냐 2 b1df2c61 2 시간 전 64
405226 (사진있음) 앞니 크라운 고민 6 6ae3fdef 2 시간 전 90
405225 회사 남직원이 들이댐.. 뭐지? 54 21d435bb 3 시간 전 435
405224 연애) 내가 서운한상황이 너무 싫다 8 6d15d1d7 3 시간 전 268
405223 소개팅하는데 사진으로 까는건 12 649a0825 4 시간 전 301