336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.
.386 ; 386 CPU용 명령어들을 사용합니다. .model flat, stdcall ; 메모리 모델은 stdcall을 사용합니다. .stack 1024 .data ; 데이터 영역은 아직 없으므로 비워둡니다. .code ; 코드 영역 시작 main PROC ; main 프로시저 선언합니다. MOV AH, 02h ; AH 레지스터에 문자 1개를 출력하는 명령인 02h를 넣습니다. 반복적으로 사용될 값이므로 첫 번째 예제와는 순서를 바꿔서 가장 처음에 배치해 봤습니다. MOV DL, 48h ; DL 레지스터에 아스키문자 'H' (0x48)를 넣습니다. INT 21h ; 만능 인터럽트 21h를 발생시켜 AH, DL에 담긴 내용대로 처리합니다. MOV DL, 65h ; DL 레지스터에 아스키문자 'e' (0x65)를 넣습니다. INT 21h ; 만능 인터럽트 21h를 발생시켜 AH, DL에 담긴 내용대로 처리합니다. MOV DL, 6Ch ; DL 레지스터에 아스키문자 'l' (0x6C)를 넣습니다. INT 21h ; 만능 인터럽트 21h를 발생시켜 AH, DL에 담긴 내용대로 처리합니다. MOV DL, 6Ch ; DL 레지스터에 아스키문자 'l' (0x6C)를 넣습니다. INT 21h ; 만능 인터럽트 21h를 발생시켜 AH, DL에 담긴 내용대로 처리합니다. MOV DL, 6Fh ; DL 레지스터에 아스키문자 'o' (0x6F)를 넣습니다. INT 21h ; 만능 인터럽트 21h를 발생시켜 AH, DL에 담긴 내용대로 처리합니다. MOV DL, 2Ch ; DL 레지스터에 아스키문자 ',' (0x2C)를 넣습니다. INT 21h ; 만능 인터럽트 21h를 발생시켜 AH, DL에 담긴 내용대로 처리합니다. MOV DL, 20h ; DL 레지스터에 아스키문자 ' ' (0x20)를 넣습니다. INT 21h ; 만능 인터럽트 21h를 발생시켜 AH, DL에 담긴 내용대로 처리합니다. MOV DL, 57h ; DL 레지스터에 아스키문자 'W' (0x57)를 넣습니다. INT 21h ; 만능 인터럽트 21h를 발생시켜 AH, DL에 담긴 내용대로 처리합니다. MOV DL, 6Fh ; DL 레지스터에 아스키문자 'o' (0x6F)를 넣습니다. INT 21h ; 만능 인터럽트 21h를 발생시켜 AH, DL에 담긴 내용대로 처리합니다. MOV DL, 72h ; DL 레지스터에 아스키문자 'r' (0x72)를 넣습니다. INT 21h ; 만능 인터럽트 21h를 발생시켜 AH, DL에 담긴 내용대로 처리합니다. MOV DL, 6Ch ; DL 레지스터에 아스키문자 'l' (0x6C)를 넣습니다. INT 21h ; 만능 인터럽트 21h를 발생시켜 AH, DL에 담긴 내용대로 처리합니다. MOV DL, 64h ; DL 레지스터에 아스키문자 'd' (0x64)를 넣습니다. INT 21h ; 만능 인터럽트 21h를 발생시켜 AH, DL에 담긴 내용대로 처리합니다. MOV DL, 21h ; DL 레지스터에 아스키문자 '!' (0x21)를 넣습니다. INT 21h ; 만능 인터럽트 21h를 발생시켜 AH, DL에 담긴 내용대로 처리합니다. MOV AH, 4Ch ; AH 레지스터에 프로그램을 종료하고 도스로 돌아가는 명령인 4Ch를 넣습니다. INT 21h ; 다시 만능 인터럽트 21h를 발생시켜 프로그램을 끝내고 도스로 돌아갑니다. main ENDP ; main 프로시저의 끝입니다. END main ; 프로그램 선언은 여기서 끝내고 main 프로시저로 진입합니다.
실행 결과
'Programming Language > Assembly' 카테고리의 다른 글
산술비교 명령어 모음 (0) | 2013.04.06 |
---|---|
점프 명령어 JMP (0) | 2013.04.06 |
첫 예제: 1개의 문자 출력 (0) | 2013.03.31 |
MASM PWB 사용하기 (0) | 2013.03.31 |
MASM 설치하기 (MS-DOS 버전) (0) | 2013.03.31 |