일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
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 |
- px4
- wargame
- 커널
- C언어
- 리눅스
- 드론
- 취약점
- 알고리즘
- Leviathan
- 시스템 프로그래밍
- 워게임
- css
- pwn.college
- 프로그래밍
- 시스템
- Pwnable.kr
- 리눅스 커널
- 시스템해킹
- 시그널
- write up
- C++
- 리눅스커널
- 어셈블리어
- pwncollege
- 리버싱
- 시스템프로그래밍
- radare2
- Bandit
- 컴퓨터구조
- kernel
- Today
- Total
목록컴퓨터구조 (4)
Computer Security

스택 -후입선출(LIFO, Last-In-First-Out) 자료구조 -스택포인터(SP, Stack Pointer)는 스택의 최상위(top) 원소를 가리키는 주소를 저장하는 레지스터 -8086은 스택 세그먼트 레지스터 SS와 스택 포인터 SP를 제공(80386+는 ESP) -스택은 상위 주소에서 하위 주소로 거꾸로 성장함 -레지스터에 있는 데이터를 스택에 저장하는 연산을 PUSH, 스택에 저장된 데이터를 꺼내서 레지스터에 적재하는 연산을 POP이라 한다. PUSH:스택은 상위주소에서 하위주소로 내려간다. POP:마지막으로 들어왔던 데이터부터 꺼내서 레지스터에 적재 PUSH 명령어 -피연산자로 지정한 워드/이중워드(80386+) 크기 레지스터나 메모리 데이터를 스택에 저장한다. -플래그:아무것도 영향을 미..

음수와 양수 -컴퓨터에서 정수 데이터는 부호가 있는(signed) 경우와 부호가 없는(unsigned) 경우로 분류 된다. -부호가 없는 경우 모든 비트가 정수의 데이터 비트로 이용되지만, 부호가 있는 경우 최상위 비트(MSB)가 부호 비트로 이용된다. -음수를 표현하기 위해 2의 보수법을 이용하며, 부호의 유무와 상관없이 덧셈과 뺄셈의 결과로 나오는 비트 데이터는 동일하다. -ADD와 SUB명령어는 데이터의 부호 유무를 구별하지 않고 단순히 비트들을 더하고 뺀다. ex) 다음과 같이 1바이트 정수 덧셈을 하는 경우 249와 2를 더하는 경우와 -7과2를 더하는 경우 모두 결과값이 11111011로 비트 필드가 서로 같다. 이진수 부호 없는 십진수 부호 있는 십진수 1111 1001 249 -7 0000..
메모리 모델 -작성되는 프로그램의 코드와 데이터의 크기를 나타내기 위해 사용되며, 사용자는 프로그램 코드와 데이터의 크기에 해당하는 메모리 모델을 어셈블러에게 알려줘야 한다. -어셈블러에게 세그먼트를 사용하는 방법, 목적 코드를 위한 충분한 공간을 제공하는 방법, 최적의 실행 속도를 보장하기 위한 방법 등을 알려준다. -메모리 모델에는 Tiny, Small, Medium, Compact, Large, Huge, Flat 등이 있다. -Tiny는 주로 .com 프로그램에 대해 사용된다. -Flat은 32비트 보호모드에서 사용되는 메모리 모델이다. .MODEL 메모리모델 SMALL : -한 세그먼트에 저장할 수 있는 코드 -한 세그먼트에 저장할 수 있는 데이터 MEDIUM : -한 세그먼트 이상에 저장할 수..
레지스터 집합 범용 레지스터(General Purpose Register) -범용레지스터는 데이터를 임시로 저장하기 위해 주로 사용되며, 프로그래머가, 즉 소프트웨어적으로 임의로 접근 가능하다. 8086에는 16비트 범용 레지스터 AX, BX, CX, DX등이 있고, 상위 8비트와 하위 8비트를 각각 H(High)와 L(Low)로 접근할 수 있다. AX(Accumulator): 주 누산기(primary accumulator) -입출력과 대부분의 산술 연산에서 사용된다. 예를 들어, 곱셈, 나눗셈, 변환 명령어들은 AX의 사용을 가정한다. BX(Base) : 베이스 레지스터 -인덱스로 사용될 수 있는 유일한 범용 레지스터다. 또한 베이스 레지스터로서 인덱스 레지스터 DI나 SI와 결합될 수 있다. -BX의..