실행환경
- cpu : 인텔계열(64bit)
- 컴파일러 : nasm
- 리눅스 : ubuntu 16.04 LTS
설치방법
- sudo apt-get install nasm
컴파일
- nasm -f elf64 파일명.asm -o 파일명.o --> 목적파일을 만든다.
- ld 파일명.o -o 파일명 --> 실행파일을 만든다.
문제 : 문자 'x' 를 입력할 때 까지 계속해서 문자 입력을 받아 화면에 출력
단, 종료문자 'x'는 대소문자 구분 없다.)
출력 예) 문자 입력 : a
문자 입력 : b
문자 입력 : X
test15.asm
section .data
msg db '문자 입력 : '
lm equ $ -msg
ent db 0x0A
section .bss
cha resb 1
t resb 1
section .text
global _start
%macro write 2
mov eax,4
mov ebx,1
mov ecx,%1
mov edx,%2
int 0x80
%endmacro
%macro read 2
mov eax,3
mov ebx,1
mov ecx,%1
mov edx,%2
int 0x80
%endmacro
_start:
write msg,lm
read cha,1
read t,1
mov al, [cha]
cmp al, 'x'
je _exit
jmp _start
_exit:
mov eax,1
int 0x80
'Programming Language > Assembly' 카테고리의 다른 글
[Assembly] 어셈블리 Test17 (0) | 2016.12.05 |
---|---|
[Assembly] 어셈블리 Test16 (0) | 2016.12.05 |
[Assembly] 어셈블리 Test14 (0) | 2016.12.05 |
[Assembly] 어셈블리 Test13 (0) | 2016.12.05 |
[Assembly] 어셈블리 Test12 (0) | 2016.12.05 |