visual 2008로 커널개발시 c언어로 점프..

intmain1202의 이미지

부트로더를 거쳐서 32비트 모드로 해서 동작하는것을 확인을햇습니다..

그리고나서 c언어로 가기위해서 visual 2008을 쓰는데요..

여기서 에러가 나네요

아래와같은 에러가 납니다...

model small로 바꾸면 저기 cpu mode 에러는 없어지는데요

pubilc과 extern명령어에서 또에러가 납니다;;

public과 extern 명령을 없애면 에러는 없구요...
뭐때문에 그런걸까요..흠.. masm에서 pubilc 명령과 extern명령이 없는건가요..?
제가 가지고 있는 책에선 masm으로 어셈블하는데.. 잘만되는데요..음..
1>C:\Irvine\sload.asm(1) : error A2085:instruction or register not accepted in current CPU mode
1>C:\Irvine\sload.asm(5) : error A2008:syntax error : in directive
1>C:\Irvine\sload.asm(6) : error A2013:.MODEL must precede this directive
1>C:\Irvine\sload.asm(7) : error A2034:must be in segment block : _EntryPoint16
1>C:\Irvine\sload.asm(8) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(9) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(10) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(11) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(12) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(13) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(15) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(16) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(17) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(18) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(20) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(21) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(23) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(24) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(25) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(31) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(32) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(33) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(35) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(36) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(37) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(38) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(39) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(40) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(42) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(43) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(44) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(45) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(46) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(47) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(49) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(50) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(51) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(52) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(55) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(56) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(57) : error A2034:must be in segment block
1>C:\Irvine\sload.asm(59) : fatal error A1010:unmatched block nesting : _EntryPoint16
1>Microsoft (R) Macro Assembler Version 9.00.21022.08
1>Copyright (C) Microsoft Corporation. All rights reserved.

댓글 달기

Filtered HTML

  • 텍스트에 BBCode 태그를 사용할 수 있습니다. URL은 자동으로 링크 됩니다.
  • 사용할 수 있는 HTML 태그: <p><div><span><br><a><em><strong><del><ins><b><i><u><s><pre><code><cite><blockquote><ul><ol><li><dl><dt><dd><table><tr><td><th><thead><tbody><h1><h2><h3><h4><h5><h6><img><embed><object><param><hr>
  • 다음 태그를 이용하여 소스 코드 구문 강조를 할 수 있습니다: <code>, <blockcode>, <apache>, <applescript>, <autoconf>, <awk>, <bash>, <c>, <cpp>, <css>, <diff>, <drupal5>, <drupal6>, <gdb>, <html>, <html5>, <java>, <javascript>, <ldif>, <lua>, <make>, <mysql>, <perl>, <perl6>, <php>, <pgsql>, <proftpd>, <python>, <reg>, <spec>, <ruby>. 지원하는 태그 형식: <foo>, [foo].
  • web 주소와/이메일 주소를 클릭할 수 있는 링크로 자동으로 바꿉니다.
댓글 첨부 파일
이 댓글에 이미지나 파일을 업로드 합니다.
파일 크기는 8 MB보다 작아야 합니다.
허용할 파일 형식: txt pdf doc xls gif jpg jpeg mp3 png rar zip.
CAPTCHA
이것은 자동으로 스팸을 올리는 것을 막기 위해서 제공됩니다.