튜터링/2013/Assembly (rev. 1.8)
Assembly 튜터링 ¶
- 교수학습센터에서 진행하는 튜터링 프로그램에 참가해 튜터링 활동을 진행
- 튜터 : 김태진
- 튜티 : 김민재,양아석,장지희,이승준,김수연
강의 내용 ¶
- 사전 실력점검 테스트
- 어셈블리란?
- 이 과목에서 가장 주로 다루는 어셈블리 언어를 사용하는 이유와 현재 어떤 곳에 사용되는지, 특징은 무엇이며 장단점은 무엇인지 알아보자.
- 컴퓨터 구조
- 어셈블리 과목의 특성상 하드웨어와 소프트웨어의 이해가 동시에 필요한데, 이 부분에 관해 알아보기 위해 하드웨어가 어떤 식으로 명령을 처리하는지 알아보자.
과제 ¶
- 어셈블리 언어란 무엇이며, 왜 쓰고 장단점은 무엇인지 써보자.(서술식으로 자신이 아는 내용/책에서 찾아본 내용을 써내려가보자.)
- 컴퓨터 구조가 어떤 식으로 되어있는지 써보고, CPU에는 어떤 것이 있으며 각각 무슨 일을 하는지 써보자.
- 재귀함수에 관해 써보고, n!을 재귀함수로 작성할 때 무엇을 고민해야하는지 써보자.
- 승준이를 위한 과제
- 0과 1000 사이의 정수를 입력받아 모든 자릿수를 더하여 출력하는 프로그램을 짜보자.
- 소문자를 대문자로 바꾸는 프로그램을 작성해보자.
- 2중 for문을 사용하여 다음 모양의 별찍기를 작성해보자.
1.
*****
****
***
**
*
2.
*
**
***
****
*****
강의 내용 ¶
- Virtual, 2진수, 메모리 공간, ALU연산, Pipeline, Multitasking, 보호모드, Little-endian, RISC&CISC
과제 ¶
- 9개의 단어 중 3개를 골라 수업시간에 그에 관해 설명할 수 있도록 준비하자.
- 아래 문제는 기출문제입니다. --*
- 각 data가 메모리에 어떻게 저장되는지 쓰세요.
.data
arrV BYTE 12h,34h,56h,78h
arrD WORD 0502h, 0603h
arrW DWORD 13141516h
- 10진수값 223을 16진수 값으로 변환하세요.
- 십진수 14에서 5를 빼는 과정과 결과를 2진수로 표현하여 쓰세요.
- Instruction Execution Cycle을 도식하고, 설명하세요.
- 어셈블리언어의 기본문법을 보고, 어떤 프로그램이든 컴파일시키고 실행시켜보자.
과제 ¶
- Directive와 instruction의 차이점에 대해 설명하시오.
- 각 배열을 그림으로 표현하고, 다음의 실행결과가 나오도록 괄호를 채우시오.
arrayB BYTE 12h, 34h, 56h, 78h;
arrayW WORD 1324h, 5768h;
arrayD DWORD 87654321h;
mov al, ( ) // al = 21
mov ax, ( ) // ax = 7856
mov eax, ( ) // eax = 57681324