어셈블러 구조
어셈블리 언어에서는 부호 선에는 2개 부품이 있다, 처음 것은 수행될 것인 지시의 이름이다, 두번째 것은 명령의 매개변수이다. 예를 들면:
ADD ah, bh
여기에서이다 수행되는 명령 "추가하십시오"; 이 경우에는 "bh" 뿐만 아니라 추가는, "아아" 매개변수이다.
언어에 있는 지시의 이름은 2개, 3개 4개의 편지로 위로 만든다. 기능을 가공업자 대표하기 때문에 이 지시는 또한 기억 이름에게 불린다 또는 연산 코드는, 실행할 것이다. 단지 다만 1개의 매개변수만 요구하는 다른 사람 뿐만 아니라 그들의 가동을 위해 매개변수를 요구하지 않는 몇몇 명령이 있다.
때때로 지시는 다음과 같이 사용된다:
ADD al,[170]
두번째 매개변수에 있는 부류는 저희에게 우리가 컴퓨터 기억 소자 번호 170의 내용과 170 가치를 아닙니다 사용하기 위하여 려고 하고 있다는 것을 나타낸다; 이것은 직접적인 방향으로 알려진다.
지금 우리는 우리의 첫번째 프로그램을 위해 덕분에 암호로 하게 준비되어 있다 제충한다. 우리는 할 무엇 우리가 보고, 우리가 프로그램으로 직접적으로 소개할 2개 가치를 추가하기위하여인 무슨을 설명하기 위하여 작동하는 프로그램을 창조하기 위하여 려고 하고 있다.
첫걸음은, 이 단계 타자를 치는 이루어져 있다 제충한다 작용하는 체계 길잡이에서만
를 제충을 개시하기 위한 것이다.
제충에 프로그램을 편집하기 위하여는, "a" (모이십시오) 명령은 이용된다. 이 명령이 사용될 때, 당신이 시작될 모이기 원하는 주소는 매개변수로 CS에 의해 지정된 지역에 매개변수가 모이는 생략되는 경우에, 개시될 것이다 주어질 수 있다: IP, 보통 .COM 연장을 가진 프로그램이 개시되어야 하는 지역인 0100h. 그리고 단지 프로그램의 이 특정한 유형을 창조하기 수 있기 제충하십시오 때문에 우리가 이용할 장소일 것이다.
비록 이 순간에 "a" 명령에게 주는 것은 필수이 매개변수, 그것은 문제를 한 번 피하기 위하여 이렇게 하도록 추천할 수 있다 CS: IP 기록기는 사용된다, 그러므로 우리는 타자를 친다:
-a0100 <Enter>
이것이 행해질 경우 이 스크린에 나타날 것이다: 0C1B: 우리가 시작으로 나타낸 주소이기 때문에 첫번째 4개의 손가락이, 16 진법 체계에서, 다를 다는 것을, 그러나 마지막 4개가 0100이어야 한ㄴ다는 것을 0100와 커서는 이 수의 오른쪽에, 주의한다 있다. 지금 우리는 지시를 소개해서 좋다:
0C1B: 0100마리의 운동 도끼, 0002; 도끼 기록기에 0002 가치를 둔다
0C1B: 0103마리의 운동 bx, 0004; bx 기록기에 0004 가치를 둔다
0C1B: 0106는 도끼, bx를 추가한다; bx의 내용은 도끼의 내용에 추가된다
0C1B: 0108 int 20; provoques 프로그램의 종료.
0C1B:010A
|