올린글을 확인할 수 있도록 포스팅을
공개
로 설정해 주세요.
포인트는 운영자가 올린글을 검토후 지급됩니다. 검토요청이 누적된 상황에서는 포인트 지급에 상당한 지연이 발생할 수 있습니다.
어셈블리어 - 어셈블리어를 이용하여 주어진 정보 출력
1. 문제정의
자신의 기본 정보(학번,이름,전공,직책)를 출력하고, 나이는 EAX 레지스터에 저장하여 출력 할 것. 이때 기본 정보는 콜론(:)이후의 문장만 출력하고 add, mov 니모닉과 offset 연산자를 사용 할 것.
2. 해결방법
① 기본정보 출력방법
menu1 BYTE Student ID : 200702661 ,0dh,0ah,0
여기서 콜론(:)이후의 문장만 출력하기 위해선 콜론이 있는 지점의 세그먼트 주소를 알아야합니다. 이때 사용되는 연산자가 바로 offset 연산자입니다.
건물을 메모리라고 생각하면 segmet는 층, offset은 그 층의 방으로 생각하면 쉽습니다.
[data segment]
offset menu1이 저장된 곳.
즉 색칠한 부분의 시작점이 menu1이 시작하는 부분입니다.
이때 menu1이 저장된 edx의 출력은 Student ID : 200702661 전체가 나오므로 add edx,DWORD를 세 번 해줍니다. add edx,DWORD는 dword크기(32byte)만큼 앞의 주소를 edx에 저장하는 명령어입니다.
mov edx,OFFSET menu1 ; menu1의 시작점을 edx에 저장
add edx,DWORD ; 시작점에서 dword만큼 이동
add edx,DWORD
add edx,DWORD
call writestring ;menu1출력
....
[hwp/pdf]어셈블리어 - 어셈블리어를 이용하여 주어진 정보 출력
포스팅 주소 입력
올린글을 확인할 수 있는 포스팅 주소를 입력해 주세요.
네이버,다음,티스토리,스팀잇,페이스북,레딧,기타 등 각각 4개(20,000p) 까지 등록 가능하며 총 80,000p(8,000원)까지 적립이 가능합니다.