크리에이티브 커먼즈 라이센스

홈페이지HOME

PHP

JavaScript

HTML

CSS

드롭다운메뉴

제로보드4

도   움   말

백지 건강강좌/자가임상체험

물박사(자가면역질환...)^미러

전동명(천연물질사전)^미러

竹田 장승옥(블로그)^글목록

계산환산(계산기)^ 단위변환

관주성경 TTS 일반파일 TTS

바이블로 Bible_ro 다운로드

다운로드>폰에 복사
>파일선택...설치됩니다.

[도움말 보기] 바로가기

개선 요구, 충고는
아래 관리자 연락
전화/메일 부탁 드립니다.
최대한 빨리 처리하고
업데이트 올리겠습니다.


asm_76.


EQU , 데이터형과 PTR 연산자


     15 이형문 buju8t 12/25 1139

     7 EQU , 데이터형과 PTR 연산자에 대해..



상수를 정의하는 EQU 의사명령






* EQU 의사명령을 사용한 프로그램

MAIN  SEGMENT

ASSUME CS:MAIN

CHAR1 EQU 'A'

CHAR2 = 42H

DISP  EQU 2

;

MOV DL,CHAR1

MOV AH,DISP

INT 21H

MOV DL,CHAR2

MOV AH,DISP

INT 21H

MOV AH,4CH

INT 21H

;

MAIN  ENDS

END






* EQU 의사명령을 사용한 상수의 정의법

CHAR1 EQU 'A' ;CHAR1

이라는 상수에 'A'=41H 가 정의

CHAR2 = 42H ;CHAR1

이라는 상수에 42H='B'가 정의

EQU 와 '='는 거의 같은동작을 합니다. EQU 는 재정의가 불가능하고, '='는 재정의가

가능하다는 차이가 있읍니다.('='에 의해 정의 된 숫자를 다시 정의할 때는 다시

= 을 사용합니다.)

* EQU 의사명령에 의한 상수는 어셈블할 때 직접 숫자로 치환되나, DB, DW, DD,

DQ, DT 등에 의해서 선언된 변수는 데이터가 저장되어 있는 번지로서 치환됩니다.

* EQU 나 '=' 에 의한 정의는 어느 곳이나 둘수 있으나 되도록 세그먼트의 시작

부분에 두는 것이 알아보기 쉽읍니다.

데이터의 형과 PTR 연산자.

오퍼랜드의 한쪽이 레지스터인 경우에는 다른쪽도 그 레지스터의 크기와 같은

크기라고 간주됩니다.

MOV AX,1234H  ;오른

쪽에 있는 데이터가  워드이고 왼쪽에 있는

 레지스터도

 워드 레지스터이므로 워드 전송

MOV [BX],DL ;오른

쪽에 있는 레지스터가 바이트 레지스터 이므

 로

바이트 전송

오퍼랜드에 레지스터를 포함하지 않는 경우에는 데이터의 형 지정이 필요합니다.

MOV [BX],12H  ;

BX라는 레지스터의 창고에 있는 번지상자에

 12H라는

데이터를 저장하라는 말.

그러나 여기서 번지 상자의 번호가 10H 라면, 10H 라는 번지 상자에  바이트

데이터 12H 를 저장할 것인지 아니면 워드 데이터 0012H를 저장하는 것인지 알 수가

없읍니다. ( 워드 데이터를 넣는 다면 번지 상자 하나로는 부족하므로 다음번지 상자인

11H 번지 상자도 같이 사용하여야 합니다.)

이해가 안된다면 아래그림을 봐 주십시요!






+--------------------------------------------------------------+

 * 바이트 데이터일 경우  * 워드 데이터일

경우

 번지  번지


+----+  +----+  +----+

 +----+  

10H  55  12 10H

 55  12

+----+ -->+----+  +----+

-->+----+  

11H  66  66 11H

 66  00

+----+  +----+  +----+

 +----+  

전송전의 값 전송후의 값

+--------------------------------------------------------------+

그러므로 데이터의 형을 다음과 같이 전송되는 측에 BYTE,WORD를 지정합니다.

MOV  BYTE PTR [BX],12H

MOV  WORD PTR [BX],12H

이 PTR이라는 overwrite 연산자를 같이 사용합니다.

이와 같은 필요성이 생기는 이유는,오퍼랜드가  다음과 같은 형식  취하고

있을 때, 완쪽 오퍼랜드의 앞에 오른쪽 오퍼랜드의 형으로 맞춘 형지정이 필요합니다.

+------------------------------------------------------------+

 [ ]를 사용한 간접지정

 수치  

 MOV  + 또는 +

 또는  

 변수이름 상수이름

 

+------------------------------------------------------------+

* PTR 의 전후에 공백을 넣어야 하지만 다음이 "["(꺽쇠 괄호)일 경우에는

비우지 않아도 상관 없읍니다.



ID:
PW:

     0 분
     1 분

자유게시판

건강백과 HOME

홈페이지 HOME

조   약     HOME

생활지혜 HOME

서식양식 HOME

법원 전산양식 검색

In Na zum

비공개 HOME

백과넷 포탈 : 건강/법률(메인)/홈피/서식/조약/생활지혜

◁ 2002.9.1.~2018.8.16. ▷

관리자 연락(저작권 의심 신고) : 김병희 010-6204-4973 k8z7@hanmail.net