만들면서 배우는 OS커널의구조와원리
-
boot.txt 해설(2)만들면서 배우는 OS커널의구조와원리 2015. 4. 16. 20:18
mov edi, 0mov byte [es:edi], 'A'inc edimov byte [es:edi], 0x06inc edimov byte [es:edi], 'B'inc edimov byte [es:edi], 0x06inc edimov byte [es:edi], 'C'inc edimov byte [es:edi], 0x06inc edimov byte [es:edi], '1'inc edimov byte [es:edi], '2'inc edimov byte [es:edi], 0x06inc edimov byte [es:edi], '3'inc edimov byte [es:edi], 0x06 edi에 0을 넣는다. es에는 0xB800이 들어있어 화면의 제일 처음부분에서 시작한다는 의미를가지고있다. mov byte ..
-
boot.txt 해설만들면서 배우는 OS커널의구조와원리 2015. 4. 16. 20:04
파일은 별도로 첨부해놓겠다. [org 0][bits 16]jmp 0x07C0:start start:mov ax, cs [arg 0]은 origin이라고 불리며, 이 프로그램이 메모리의 몇번지에서 실행하는지 컴파일러에게 알려주는 선언구문이다.프로그램상에서의 오프셋의 기준을 마련하는것이라고 할수있다. 디스어셈블한 결과이다. 실제번지수는 00000000부터 시작한다. 옆에 옵코드가 나타나는데 CPU는 이 옵코드를 실행한다. 그밑에 mov ax,cs의 번짓수를 보면 00000005로 되어있는데 해당이유는 그전의 옵코드가 5바이트이기때문이다. 0xEA 0x0F 0x00 0xC0 0x07 0부터 4까지 차지하고 그다음주소는 5가된다. 이제 다시 코드 해석으로 넘어가서 [bits 16]에 대해서 알아보겠다. [bit..