총 13개
-
어셈블러의 설계 알고리즘과 자료구조2025.05.131. 어셈블러의 설계 알고리즘 어셈블러는 두 개의 패스로 구성됩니다. 패스 1은 명령어 표를 참조하여 명령어들의 상대 주소를 결정하고, 기호표를 작성하여 기호의 재배치 여부를 결정하는 역할을 합니다. 패스 2는 명령어를 2진 코드로 대체하고 명령어의 기호를 기호표에 있는 값으로 대체하는 역할을 합니다. 2. 어셈블러의 자료구조 패스 1과 패스 2는 각각 다른 역할을 수행하므로 연관된 데이터베이스도 달라 각각의 자료구조를 갖습니다. 패스 1은 원시 프로그램, 명령어 및 지시어 표를 입력으로 받고 기호 표를 출력합니다. 패스 2는 패스...2025.05.13
-
이중 패스 어셈블러의 알고리즘에 대하여 정리해 보세요2025.01.181. 이중 패스 어셈블러 이중 패스 어셈블러는 소스 코드를 두 번 스캔하여 어셈블리 과정을 수행합니다. 첫 번째 패스에서는 레이블 정의를 찾아 기호 테이블에 추가하고, 두 번째 패스에서는 기호 테이블을 참조하여 실제 기계 코드로 변환합니다. 이를 통해 데이터 기호의 순방향 참조 문제를 해결할 수 있습니다. 2. 원 패스 어셈블러와의 비교 원 패스 어셈블러는 소스 코드를 한 번만 스캔하여 즉시 기계 코드를 생성하지만, 데이터 기호의 순방향 참조 문제를 해결하기 어렵습니다. 이에 비해 이중 패스 어셈블러는 두 번의 스캔을 통해 이 문제...2025.01.18
-
이중 패스 어셈블러의 알고리즘에 대하여 정리해보세요2025.01.221. 이중 패스 어셈블러 알고리즘 이중 패스 어셈블러 알고리즘은 프로그램을 처음부터 끝까지 소스 프로그램을 전체 스캐닝한 뒤 한 번 더 읽으며 전체 번역이 이루어지도록 하는 번역기입니다. 첫 번째 패스 단계에서는 기호표를 형성하고 두 번째 패스에서는 번역하며 목적 프로그램을 형성하는 방식으로 현재는 대부분 어셈블러가 이러한 방식을 채택하고 있습니다. 2. 패스 1 알고리즘 패스 1 알고리즘은 명령어의 크기, 형태 등을 나타내는 명령어 표를 참조하고 명령어의 상대 주소를 결정합니다. 또한, 기호표를 작성하고 기호 재배치 여부를 결정하...2025.01.22
-
Linux(리눅스)와 Unix(유닉스)2025.05.161. 어셈블러 어셈블러는 어셈블리어를 기계어로 번역하는 역할을 한다. 초기 컴퓨터는 몇 개의 기본적인 명령어만 해독할 수 있게 하는 단순한 형태였고 프로그래머는 0과 1의 배열로 구성된 기계어로 프로그래밍했다. 이를 기억장치에 넣고 실행했는데 2진수 형태의 기계어를 통해 프로그램을 작성하는 것은 어려웠고 프로그래머는 더 간편한 프로그래밍 언어가 필요하게 되었다. 어셈블리어는 기계어 명령에 대응해 기호를 사용했고 사용자는 기억을 도와주는 기계어인 어셈블리어를 만들게 되었다. 2. 매크로 프로세서 매크로 프로세서는 프로그램이 과정에서 ...2025.05.16
-
어셈블리어의 특징과 명령어 형식2025.01.031. 어셈블리어 어셈블리어는 컴퓨터 프로그래밍 언어의 한 종류로 저급언어에 속하는 언어입니다. 어셈블리어는 어셈블러라는 프로그램을 사용하기 위해서 쓰는 프로그램 언어로, 기계어와 거의 일대일로 이루어집니다. 어셈블리어는 하드웨어에 직접 접근해서 프로그램을 처리하며, 명령의 실행 속도가 가장 빠르지만 세밀하게 프로그래밍해야 한다는 단점이 있습니다. 하지만 하드웨어를 효율적으로 제어할 수 있기 때문에 많은 사람들이 이 언어를 배웁니다. 2. 어셈블리어 명령어 형식 어셈블리어의 명령어 형식은 다음과 같습니다. Label은 명령어나 데이터...2025.01.03
-
어셈블리언어(시스템프로그래밍) 과제-4 (고급 언어 구조와 정수 연산을 수행하는 프로그램)2025.05.111. 메모리 변수 사용 프로그램 메모리 변수를 사용하는 간단한 프로그램을 작성하여 Visual Studio 통합개발환경에서 어셈블러를 사용할 수 있는 프로젝트를 만들고 실행해보았습니다. 디버거 사용법도 연습하였습니다. 코드를 통해 변수 val1과 val2의 메모리 주소와 저장된 값을 확인할 수 있었고, 레지스터 eax에 두 값의 합이 저장된 것을 확인할 수 있었습니다. 2. if-else 구문 구현 if-else 구문을 구현하는 프로그램을 작성하였습니다. ecx와 edx 레지스터에 입력받은 값을 비교하여 조건부 점프를 통해 x 변수...2025.05.11
-
방통대 출석대체시험 컴퓨터구조 요약본2025.01.261. 컴퓨터 세대별 발전과정 컴퓨터 세대별 발전과정은 1세대 - 진공관(어셈블리어 일괄처리), 2세대 - 트랜지스터(고급언어 실시간처리), 3세대 - 직접회로[IC](시분할처리), 4세대 - LSI(인공지능 전문가시스템), 5세대 - VLSI(병렬처리, 자연언어처리)로 설명되어 있습니다. 2. 기본 연산회로 기본 연산회로에는 가산기(덧셈), 감산기(뺄셈), 승산기(곱셈), 제산기(나눗셈)이 포함됩니다. 3. MSI(Medium Scale Integrated circuits) MSI(Medium Scale Integrated circ...2025.01.26
-
Cortex M3의 Code, 접미사, CPSR의 플래그, 의미를 논하시오2025.01.171. Cortex-M3 아키텍처 개요 Cortex-M3는 ARM Holdings에서 개발한 32비트 RISC 마이크로프로세서 아키텍처로, 임베디드 시스템 및 실시간 응용 분야에 최적화되어 있습니다. 이 아키텍처는 저전력 소비, 높은 성능, 신뢰성, 보안 등 다양한 요구사항을 충족시킬 수 있습니다. Cortex-M3는 Harvard 아키텍처를 기반으로 하며, 단일 사이클 명령어 실행을 지원하여 효율적인 처리를 가능하게 합니다. 2. Code Code는 마이크로프로세서에서 실행되는 명령어들의 집합을 의미합니다. 이는 프로그래머가 작성한...2025.01.17
-
C언어 스케치 연습문제 솔루션 - 제 03장 입출력2025.04.301. 변수의 자료형 변수의 자료유형은 바뀔 수 없으며, 변수는 자료유형에 따라 저장공간 크기와 저장되는 자료 값의 종류가 결정됩니다. 0과 양수를 처리하는 자료유형은 short, int, long 앞에 키워드 unsigned를 표시합니다. 컴파일러가 컴파일하기 전에 어셈블러의 전처리 과정이 필요합니다. 자료유형 short는 short int라고도 하며, long은 long int라고도 합니다. 문자형과 정수형의 최대 최소 상수는 헤더파일 limits.h에 정의되어 있습니다. 자료유형의 범주를 벗어난 값을 저장하면 오버플로가 발생합니...2025.04.30
-
서강대학교 23년도 마이크로프로세서응용실험 3주차 Lab03 결과레포트 (A+자료)2025.01.211. 메모리 소자 마이크로 컨트롤러는 메모리 소자를 내장하고 있다. 메모리 소자는 크게 ROM과 RAM으로 구분되며, 이 둘의 차이는 volatile 여부로 나뉜다. RAM에서는 CPU가 데이터를 읽거나, 쓰는 동작을 수행할 수 있다. 2. SRAM 구조 및 동작 SRAM의 경우 메모리 소자의 한 종류이다. 메모리의 동작을 위해서는 핀들을 통한 신호전달이 필요하다. /CS는 특정 메모리 소자를 선택하는 신호로, LOW일 때 메모리가 선택되어 read/write가 가능해진다. /WE는 메모리에 데이터를 쓰고자 할 때 LOW가 되어야 ...2025.01.21
