"바이트코드"의 두 판 사이의 차이
(새 문서: '''바이트코드(Bytecode)'''란 CPU(중앙 처리 장치) 대신에 가상 컴퓨터(VW)에서 실행하도록 컴파일 된 OOP(Object-Oriented Programming) 코드이...) |
|||
1번째 줄: | 1번째 줄: | ||
− | '''바이트코드 | + | '''바이트코드'''(bytecode)란 특정한 [[하드웨어]]가 아니라 [[자바가상머신]](JVM)과 같은 가상의 컴퓨터에서 작동하도록 만든 이진 코드이다. 프로그램 [[소스 코드]]를 [[컴파일]]하여 바이트코드를 생성한다. 반대로 바이트코드를 역컴파일(逆compile)하면 [[주석]]을 제외한 소스 코드의 대부분을 복원할 수 있다. |
− | == | + | 바이트코드는 중앙처리장치인 [[CPU]] 대신에 자바가상머신에서 실행하도록 컴파일된다. 플랫폼에서 다양한 코드 해석 기법을 사용하기 때문에 [[가상머신]](Virtual Machine)은 프로그램 코드를 CPU가 읽을 수 있는 [[기계어]]로 변환한다. 사람들이 읽기 쉽도록 만들어진 [[소스 코드]]와 다르게, 바이트코드는 덜 추상적이며, 더 간결하고, 컴퓨터 중심적으로 돌아간다. 바이트코드는 변수의 접근 범위 같은 의미 분석 단계의 결과를 부호화한다. 그래서 일반적으로 소스 코드를 직접 분석·실행하는 것보디 더 좋은 성능을 보여 준다. |
− | *[[자바]] | + | |
− | *[[기계어]] | + | == 같이 보기 == |
− | [[분류: | + | * [[자바]] |
+ | * [[자바가상머신]](JVM) | ||
+ | * [[기계어]] | ||
+ | * [[컴파일]] | ||
+ | |||
+ | [[분류:프로그램]] |
2018년 7월 18일 (수) 10:58 판
바이트코드(bytecode)란 특정한 하드웨어가 아니라 자바가상머신(JVM)과 같은 가상의 컴퓨터에서 작동하도록 만든 이진 코드이다. 프로그램 소스 코드를 컴파일하여 바이트코드를 생성한다. 반대로 바이트코드를 역컴파일(逆compile)하면 주석을 제외한 소스 코드의 대부분을 복원할 수 있다.
바이트코드는 중앙처리장치인 CPU 대신에 자바가상머신에서 실행하도록 컴파일된다. 플랫폼에서 다양한 코드 해석 기법을 사용하기 때문에 가상머신(Virtual Machine)은 프로그램 코드를 CPU가 읽을 수 있는 기계어로 변환한다. 사람들이 읽기 쉽도록 만들어진 소스 코드와 다르게, 바이트코드는 덜 추상적이며, 더 간결하고, 컴퓨터 중심적으로 돌아간다. 바이트코드는 변수의 접근 범위 같은 의미 분석 단계의 결과를 부호화한다. 그래서 일반적으로 소스 코드를 직접 분석·실행하는 것보디 더 좋은 성능을 보여 준다.