1 / 10

컴퓨터시스템구조 – 6 장 기본 컴퓨터 프로그래밍

컴퓨터시스템구조 – 6 장 기본 컴퓨터 프로그래밍. Prof. 강 의 성 순천대학교 컴퓨터교육과 http://nova.sunchon.ac.kr magasa@sunchon.ac.kr Tel. 061-750-3344. 6.1 개요. ORG 100 LDA SUB CMA INC ADD MIN STA DIF HLT MIN, DEC 83 SUB, DEC –23 DIF, HEX 0 END. 6.2 기계어 (machine language) (1).

esme
Download Presentation

컴퓨터시스템구조 – 6 장 기본 컴퓨터 프로그래밍

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 컴퓨터시스템구조 – 6장 기본 컴퓨터 프로그래밍 Prof. 강 의 성 순천대학교 컴퓨터교육과 http://nova.sunchon.ac.kr magasa@sunchon.ac.kr Tel. 061-750-3344

  2. 6.1 개요 ORG 100 LDA SUB CMA INC ADD MIN STA DIF HLT MIN, DEC 83 SUB, DEC –23 DIF, HEX 0 END

  3. 6.2 기계어 (machine language) (1) 기호 연산 코드를 가진 프로그램 두 수를 가산하는 16진 프로그램 그림 5.1에서의 operand에 해당 두 수를 가산하는 이진 프로그램

  4. 두 수를 더하는 어셈블리 프로그램 ORG 0 LDA A ADD B STA C HLT A, DEC 83 B, DEC -23 C, DEC 0 END 두 수를 더하는 포트란 프로그램 INTEGER A, B, C DATA A, 83 B, -23 C = A + B END 두 수를 더하는 C 프로그램 int a=83, b=-23, c; c = a + b; 6.2 Cont’d (2)

  5. 6.2 Cont’d (3) • 이진 코드 (binary code) • 메모리 상에 올라가 있는 이진 형태의 명령어, 이진수 명령어와 피연산자 (데이터)들의 시퀀스 • 8진수 또는 16진수 코드: 이진 코드를 8진수, 16진수로 표현 • 기호 코드 • 연산, 주소 등을 문자, 숫자, 특수 문자 등을 이용하여 나타낸 것 • 하나의 기호 코드가 하나의 이진 코드로 번역된다. • 이러한 기호 코드를 이용한 프로그램을 어셈블리 (assembly) 프로그램 • 어셈블리 프로그램을 이진코드로 바꿔주는 (번역) 프로그램을 어셈블러 (assembler) • 고급 프로그램 언어 • 포트란 (FORTRAN) • 파스칼 (PASCAL) • 베이직 (BASIC) • C (?) • 고급 프로그램을 이진 코드로 바꾸는 응용 프로그램을 컴파일러 (complier)

  6. 6.3 어셈블리 언어 (assembly language) (1) • 모든 컴퓨터 (마이크로 프로세서 or CPU)는 각각의 어셈블리 언어를 가지고 있다. • 어셈블리 언어 규칙은 컴퓨터 (마이크로 프로세서) 제조업체에서 만든다. • 언어 규칙 • 어셈블리 언어의 각 줄은 필드 (field)라 불리는 세 개의 부분으로 구성 • 라벨 (label) 필드: 빈 칸 또는 기호 주소 • 명령어 필드: ADD A, LDA A 같은 명령어 • 메모리 참조 명령어 (MRI) • 레지스터 참조 또는 입출력 명령어 (non-MRI) • 슈도 (pseudo) 명령어 • 각 명령어 예 • CLA non-MRI • ADD OPR 직접주소 MRI • ADD PTR I 간접주소 MRI • 코멘트 • 명령어에 대한 해설, 없어도 됨. • 슬래시 (/) 기호 다음에 설명 내용이 온다

  7. 두 수를 감산하는 어셈블리 프로그램 ORG 100 LDA SUB CMA INC ADD MIN STA DIF HLT MIN, DEC 83 SUB, DEC –23 DIF, HEX 0 END 번역된 프로그램 리스팅 ORG 100 2107 LDA SUB 7200 CMA 7020 INC 1106 ADD MIN 3108 STA DIF 7001 HLT 0053 MIN, DEC 83 FFE9 SUB, DEC –23 0000 DIF, HEX 0 END 6.3 Cont’d (2)

  8. 6.4 어셈블러 (assembler) (1) • 기호로 입력 소스 프로그램을 읽어서 이진 코드로 번역하는 프로그램 • 소스 프로그램 • 사용자에 의해서 작성되는 어셈블리 프로그램 • ASCII 코드에 의해서 표현 • 목적 프로그램 • 어셈블러에 의해서 번역된 이진 코드 • Two-pass 어셈블러 • First pass • 사용자가 정의한 주소 기호와 이것에 대한 이진수 값의 관계를 나타내는 테이블 작성 • 표 6-11, 6-12 참조 • Second pass: 다음과 같은 네 개의 테이블을 이용하여 기호들을 이진코드로 변환 • 슈도 명령어 테이블 • MRI 테이블 • Non-MRI 테이블 • 주소-기호 테이블

  9. 6.4 Cont’d (2) • First Pass

  10. 6.4 Cont’d (3) • Second Pass

More Related