1.Соблюдая правила выполнения арифметических операций при различных способах адресации операндов, определить результаты выполнения команд:
ADD AX,[SI+20h]
SUB [SI],CX
ADC CX,DX
SBB DX, 3546
INC[DI+10h]
DEC DX
NEG BX
CMP DX, [SI+30h],
с учётом содержимого (в шестнадцатеричном коде) регистров, адресуемой ячейки памяти и состояния признака переноса CF=1.
AX=A565
BX=15A8
DX=14C5
CX=7D65
DS=CA1D
SI=C76C
DI=E441E
Память=6C02
(DS)*10h+(SI)+20h=(CA1D0+C76C+20)h=D695Ch
ADD AX,[SI+20h]: (AX)=(A565h+D695Ch)=EOEC1h
SUB [SI],CX: ([SI])= (D695C-7D65)h=CEBF7h
ADC CX,DX: (CX)=(CX)+(DX)+CF= (7D65+14C5+1)h=922Bh
SBB DX, 3546: (DX)=(DX)-3546h-CF=(14C5-3546-1)h=FFFFFFFFFFFFDF7Eh
(DS)*10h+(DI)+10h=(CA1D0+E441E+10)h=1AE5FEh
INC[DI+10h]: ([1AE5FEh])=(D695C+1)h=D695Dh
DEC DX: (DX)=(14C5-1)h=14C4h
NEG BX: (BX)=15A816=10101101010002
(BX)=0101001010111+1=101001011000=A58h
(DS)*10h+(SI)+30h=(CA1D0+C76C+30)h=D696Ch
CMP DX, [SI+30h]: (14C5-D695C)h=FFFFFFFFFFF2AB69
Результаты команд приведены на рис. 5.1.
Рис.5.1. Результаты выполнения команд.
2. Соблюдая правила выполнения арифметических операций при различных способах адресации операндов, определить результаты выполнения команд:
MUL DL
MUL [SI+15h]
DIV CL
DIV [SI+15h]
с учётом содержимого (в шестнадцатеричном коде) регистров, содержимого адресуемой ячейки памяти (при необходимости привести физический адрес используемой ячейки памяти).
AX=32A6
DS=1C00
DL=10
CL=08
SI=F260
DX=825A
Память=CA56
Результаты команд приведены на рис. 5.2.
Рис.5.2. Результаты выполнения команд.