어셈블리어 처음배우는데 질문이 있어요
글쓴이: muncok / 작성시간: 수, 2005/02/09 - 7:55오후
MAIN SEGMENT ASSUME CS:MAIN,DS:DATA ; MOV AX,DATA MOV DS,AX MOV DL,AA MOV AH,2 INT 21H MOV DL,BBB MOV AH,2 INT 21H MOV AH,4CH INT 21H ; MAIN ENDS ; DATA SEGMENT AA DB 'a' BBB DB 'b' ; DATA ENDS END
이렇게 했는데요
Assembling: C:\masm32\aaa.asm C:\masm32\aaa.asm(4) : error A2004: symbol type conflict
이렇게 나오네요
왜 ax와 data 세그먼트의 크기가 불일치하죠?
또한 mov 변수,16진수가 가능하나요? 불가능하다면 따로 하는방법좀.. 책에서는 즉치는 간접메모리 방식으로 하라고 했는데 뭔말인지[/code]
----------------------
헉 masm32 8v은안되는데 예전 버전으로 하면 되네요 이유가?
Forums:
MASM을 오랫동안 안써봐서 잘 모르겠군요그리고 오퍼랜드1=변수(
MASM을 오랫동안 안써봐서 잘 모르겠군요
그리고 오퍼랜드1=변수(메모리주소), 오퍼랜드2=즉치데이터
조합이 가능한 명령은 (mov뿐만 아니라 add/adc/sub/sbb/and/or 등)
오퍼랜드1 앞에 BYTE PTR, WORD PTR 등등 크기를 정확하게
지정해 주어야 하는걸로 알고 있습니다. 특히 숫자로 주소
바로 집어넣은 경우는 무조건 써야 합니다.
(제가 자주 쓰는 NASM의 경우는 아예 변수의 개념조차도 없죠)
Written By the Black Knight of Destruction
댓글 달기