inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

독하게 되새기는 C 프로그래밍

코드생성 및 최적화

코드생성 및 최적화 질문입니다

해결된 질문

151

붉은외계인

작성한 질문수 6

0

안녕하세요! 항상 잘 보고 있습니다

최적화 관련으로 궁금증이 생겨 질문을 남깁니다

 

제가 찾아본 관련 내용은 아래와 같습니다

  1. 중간 코드 생성 다음으로 이루어지는 중간 코드 최적화

     

  2. 기계어 생성 다음으로 이루어지는 기계어 최적화( ? )

  3. 중간 코드 최적화의 다양한 기법

 

질문 1

영상 5:30의 어셈블리어를 보면 a = 3 + 4 표현식이 결과값인 7로 대체 되어 있습니다
이것은 중간 코드 최적화 기법중 상수 폴딩에 해당하는거 같습니다
그렇다면면 여기서 이루어진 최적화는 중간 코드 최적화가 맞을까요?

감사합니다 !

c kernel secure-coding

답변 1

0

널널한 개발자

컴파일러 마다 다를 수 있습니다. 중간 코드를 생성하는 것이 최신 컴파일러의 보편적 특성이긴 하지만 C언어의 경량 컴파일러는 중간 코드를 생성하지 않고 바로 기계어를 생성합니다. 그러므로 PC환경이고 Visual C++ 환경이라면 중간 코드를 생성한다고 봐야 하겠습니다.

그러나 3 + 4를 7로 단순 변환하는 정도는 추상 구문 트리를 생성하는 단계에서도 가능합니다. 중간 코드로 변환되기도 전에 최적화 될 수 있으며 이는 컴파일러가 결정할 문제입니다. 반드시 중간 코드 생성 단계라 단정 할 수는 없습니다. 참고하시기 바랍니다. 😄

병행성 제어

0

41

2

질문이 있습니다(강의와 거의 상관이 없는)

0

70

2

컴파일러 서적 질문입니다

0

154

1

Hex Editor를 이용한 다국어 번역 관련 질문입니다

0

206

2

큐의 배열을 넘겨도 정상작동합니다

0

155

2

캐너리비트에 관하여 질문

0

207

3

상수화된 문자열에 질문있습니다

0

167

1

함수 호출 매개변수 전달에 대한 질문 드립니다.

0

187

1

단항 증감 연산에 따른 다른 접근에 대한 질문있습니다.

0

203

2

함수호출 규약 종류에 따른 장단점 여부

0

221

2

정적라이브러리 링크 오류

0

221

1

const char *를 char*에 초기화할때의 컴파일 에러 처리 방식 문의

0

348

2

pszParam 수정이 왜 Hello World print에도 영향을 미치는지 이해가 잘 안됩니다.

0

248

2

비선형 자료구조

0

307

1

자료 구조 공부 후에

0

348

1

강의자료 관련

0

248

1

마지막에 말씀하신 부분 질문드립니다.

0

209

1

문자열 관련 질문 드립니다

0

286

1

라이브러리

0

269

1

부동소수점

0

386

1

왜 변수 주소 사이에 offset이 있는 건가요?

0

297

2

stack 쌓는 순서

0

500

1

함수호출이랑 쓰레드

0

404

1

리눅스 환경도 스레드 생성 원리는 동일한건가요?

0

522

1