Download as pdf or txt
Download as pdf or txt
You are on page 1of 3

다음 instructions들이 무엇을 행하는 것인가를 기술하라.

(각 5점 총 25점)

a) CMP WORD PTR [DI], 1234H


b) LAHF
MOV [MEM1], AH
MOV AH, [MEM2]
SAHF
c) NEG BYTE PTR [DI]+0010H
d) IMUL WORD PTR [BX+SI]
e) IDIV BYTE PTR [BX][SI]+0030H

2. 메모리 [Control_flag]의 위치에 있는 내용을 아래와 같이 수정하기 위한 프로그램을 작성하라. 단, 초


기에 값은 (control_flag) = B7 B6 B5 B4 B3 B2 B1 B0이라고 가정한다.(총 10점)

a) [control_flag]의 bit중 bit 2(B2)와 bit 6(B6)의 값이 1의 값을 갖도록 바꾸되 나머지는 원래의 값
을 유지하도록 하라. (5점)
MOV AL, [control_flag]
?????????? ; insert appropriate instructions here....
MOV [control_flag], AL
b) [control_flag]의 bit 중 bit 3 값을 읽기 위한 한 방법으로서 SHR instruction을 활용하려고 한다.
오른쪽으로 네 번을 shift하면 bit 3의 값이 (CF)로 복사되는 점을 이용하는 것이다. (CF)로 옮기는
부분까지를 완성하라.(5점)
MOV AL, [CONTROL_FLAGS]
??????????? ; insert the instructions here...
?????????? ;

3. 아래 프로그램은 각각 메모리 [Control_flag]의 위치에 있는 내용을 어떻게 수정하기 위한 프로그램


인가를 설명하라. 단, 각 문제 a), b), c) 각각의 초기에 값은 (control_flag) = B7 B6 B5 B4 B3 B2
B1 B0이라고 가정한다. (각 5점 총 10점) (단, 원래 값의 complement 값은 
 와 같이 표기할 것)

a) MOV AL, [Control_flags]


OR AL, 0FH
MOV [Control_flags], AL

b) MOV BL, [Control_flags]


AND BL, 0FH
XOR BL, 0FH
MOV [Control_flags], BL
4. 다음 프로그램에서 진한 글씨로 표기된 부분이 무엇을 행하는 지를 구체적으로 기술하라.(10점)
TITLE EXAMPLE
CODE_SEG SEGMENT 'CODE'
EXAMPLE PROC FAR
ASSUME CS:CODE_SEG, SS:STACK_SEG
; to return to DEBUG program, put return address on the stack
PUSH DS
MOV AX,0
PUSH AX
;
CMP AX, BX
JC AAA
BBB: MOV DX, AX
SUB DX, BX
JMP DONE
AAA: MOV DX, BX
SUB DX, AX

DONE: NOP
RET ; return to DOS program
EXAMPLE ENDP

CODE_SEG ENDS
END EXAMPLE

You might also like