수체계

 

10진수

- 0~9로 이루어진 수체계

 

2진수

- 0과 1로 이루어진 수체계

 

16진수

- 0~9, A~F로 이루어진 수체계

 

16진수 → 2진수

 

24D(2)

D : 13 => 1101(2)

      4 => 100(2)

      2 => 10(2) 

24D(16) = 001001001101(2)

 

 

10진수 → 16진수

 

1324

① 1324/16 = 82.xx

    1324 - (82×16) = 12 : C(16)

② 82/16 = 5.xx

    82 - (5×16) = 2

③ 5/16 = 0.xx

    5 - (0×16) = 5

1324 = 52C(16)

 

 

 

 

메모리

 

- 기본단위 : 1byte

 

주소

0

1

2

3

4

5

6

7

메모리

2A

45

B8

20

8F

CD

12

2E 

 

- 단위

  word 4byte    double word 4byte    quad word 8byte    pharagraph 16byte

 

- 문자는 문자코드를 사용하여 저장

  ASCII        하나의 문자를 인코딩하기 위해 1byte 사용

  Unicode    하나의 문자를 인코딩하기 위해 2byte(1worD) 사용(ASCII보다 더 많은 문자 맵핑 가능)

 

 

 

Segment:Offset

 

- 메모리가 Segment라고 불리는 바이트의 집합으로부터 분리

- Segment는 Offset번호를지정하여 메모리에 접근

- 데이터에 접근할 때 Segment번호:Offset번호의 리퀘스트를 보낸다

  ex)물리적 주소로 변환하기 : 1234:4321 => 1234×10h+4321 = 16661

 

레지스터

- 데이터를 저장할 수 있는 작은 영역

- 프로그램 실행 중 정보를 저장

- 레지스터 내의 저보 접근이 메모리에 접근하는 것보다 빠름

-레지스터 번호는 제한되어 있다.

 

일반적인 특성을 위한 레지스터(16비트로 구성) :

종류

구성 

용도 

AX

AH, AL

수학연산, I/O연산, INT 21

BX

BH, BL

Base 또는 Pointer

CX

CH, CL

루프 or 반복

DX

DH, DL

다양한 데이터, 문자 출력

- 386이 나온 경우 새로운 레지스터 EAX, EBX, ECX, EDX가 추가됨(32비트로 확장)

EAX

               

AH

AL

AX

 

 

 

 

세그먼트 레지스터 :

종류

용도

CS

코드를 저장하는 메모리 블록

DS

데이터를 저장하는 메모리 블록

EX

비디오 관련된 것을위해 사용

SS

루틴으로부터 리턴 어드레스 저장을 위해 프로세서에 의해서 사용되는 레지스터

 

 

인덱스 레지스터 :

종류

용도 

SI 

문자열/배열의 소스를 지정하기 위해 사용

DI 

문자열/배열의 목적지를 지정하기 위해 사용

IP

다음 명령의 주소를 저장하고 직접적으로 변경할 수 없음

 

 

 

+ Recent posts