일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | 4 | 5 | 6 | 7 |
8 | 9 | 10 | 11 | 12 | 13 | 14 |
15 | 16 | 17 | 18 | 19 | 20 | 21 |
22 | 23 | 24 | 25 | 26 | 27 | 28 |
29 | 30 | 31 |
Tags
- 분류
- 머신러닝
- deep learning
- ChatGPT
- supervised learning
- OpenAI
- 회귀
- 지도학습
- Classification
- gpt
- LG Aimers 4th
- PCA
- regression
- AI
- LLM
- 티스토리챌린지
- 해커톤
- 오블완
- LG Aimers
- GPT-4
- Machine Learning
- 딥러닝
- LG
Archives
- Today
- Total
SYDev
[컴퓨터 구조] Lecture 08: Instructions - Language of the Computer 본문
3학년 1학기 전공/컴퓨터 구조
[컴퓨터 구조] Lecture 08: Instructions - Language of the Computer
시데브 2024. 4. 13. 01:25경희대학교 컴퓨터공학부 김정욱 교수님의 컴퓨터 구조 강의 내용을 기반으로 한 정리글
Translating and Starting a Program
Compiler
- C program -> Assembly language program
- 1970, 1980년대에는 많은 운영체제와 어셈블러가 어셈블리 언어로 작성되었다. -> 메모리가 용량이 적고, 컴파일러가 비효율적이기 때문에
- high-level language 프로그램은 어셈블리어보다 매우 적은 코드로 작성 가능
Assembler
- Assembly Language Code -> Machine Code(Object file)
- Object file: Combination of machine language 명령어, 데이터, 명령어를 메모리에 적절하게 위치시킬 정보
- Machine code: CPU에서 바로 실행될 수 있는 2진코드
Linker
- 독립적으로 어셈블된 모든 오브젝트 파일들을 하나로 묶는 역할을 한다. -> executable file(.exe file)
linker가 중요한 이유
- 컴퓨팅 리소스를 사용하는 모든 함수를 retranslating함
- 각 procedure를 독립적으로 컴파일&어셈블한다. -> online change는 오직 한 번의 procedure 컴파일&어셈블링을 필요로 한다.
Dynamically linked libraries(DLLs)
- 동적으로 링킹된 라이브러리
- 프로그램이 실행되는 동안 링킹되는 라이브러리 루틴(block of codes)
- 프로그램이 실행되기 이전에 라이브러리를 링킹하면?(정적 링킹) -> 라이브러리의 new version이 나와도, old version 사용을 유지한다. 프로그램에서 라이브러리를 사용하지 않아도, 해당 라이브러리의 모든 루틴을 로드한다.
ARM vs. MIPS
ARMv7
- ARM: 임베디드 장치에서 가장 인기있는 ISA(intruction set architecture)
- 임베디드 환경에서는 속도가 빨라야함 -> 경량화 중요
- arm의 목적은 속도 -> divide는 다른 연산에 비해 속도가 굉장히 느림 -> 다른 방법으로 근사화
'3학년 1학기 전공 > 컴퓨터 구조' 카테고리의 다른 글
[컴퓨터 구조] Lecture 10: Arithmetic for Computers (0) | 2024.04.19 |
---|---|
[컴퓨터 구조] Lecture 09: Arithmetic for Computers (0) | 2024.04.13 |
[컴퓨터 구조] Lecture 07: Instructions - Language of the Computer (0) | 2024.04.05 |
[컴퓨터 구조] Lecture 06: Instructions - Language of the Computer (0) | 2024.04.04 |
[컴퓨터 구조] 3주차 정리 (0) | 2024.03.22 |