Похожие презентации:
Циклы. Компьютерные основы программирования. Представление программ, часть 3
1. Компьютерные основы программирования Представление программ часть3
Лекция 6, 16 и 23 марта 2017Лектор: Чуканова Ольга
Владимировна
Кафедра информатики
602 АК
[email protected]
2.
3.
4.
5.
6.
7.
8.
• _pcountpush
mov
mov
xor
• @1@58:
mov
and
mov
add
mov
shr
or
jne
mov
pop
ret
proc far
bp
bp,sp
bx,word ptr [bp+6]
cx,cx
ax,bx
ax,1
dx,cx
dx,ax
cx,dx
bx,1
bx,bx
short @1@58
ax,cx
bp
9.
10.
11.
• _fib procpush
mov
sub
xor
xor
mov
• @1@58:
mov
add
mov
mov
mov
inc
cmp
jl
mov
mov
pop
ret
far
bp
bp,sp
sp,2
dx,dx
bx,bx
cx,1
ax,bx
ax,cx
word ptr [bp-2],ax
bx,cx
cx,word ptr [bp-2]
dx
dx,word ptr [bp+6]
short @1@58
ax,bx
sp,bp
bp
12.
13.
14.
15.
16.
• _fib1push
mov
sub
mov
mov
mov
jmp
• @1@58:
mov
add
mov
mov
mov
inc
• @1@86:
cmp
jl
mov
mov
pop
ret
proc far
bp
bp,sp
sp,2
dx,1
bx,1
cx,1
short @1@86
ax,bx
ax,cx
word ptr [bp-2],ax
bx,cx
cx,word ptr [bp-2]
dx
dx,word ptr [bp+6]
short @1@58
ax,bx
sp,bp
bp
17.
18.
i=1i<n
19.
20.
21.
22.
• _fib2push
mov
sub
mov
mov
mov
jmp
• @1@58:
mov
add
mov
mov
mov
inc
• @1@114:
cmp
jl
mov
mov
pop
ret
proc far
bp
bp,sp
sp,2
bx,1
cx,1
dx,1
short @1@114
ax,bx
ax,cx
word ptr [bp-2],ax
bx,cx
cx,word ptr [bp-2]
dx
dx,word ptr [bp+6]
short @1@58
ax,bx
sp,bp
bp
23.
24.
25.
26.
27.
28.
29.
30.
31.
32.
33.
34.
35.
36.
37.
38. Процедуры Структура стекового фрейма
39.
40.
41.
42.
43.
44.
_caller procpush
mov
sub
mov
mov
lea
push
lea
push
call
add
mov
12],eax
mov
4]
sub
8]
mov
pop
ret
far
ebp
ebp,esp
esp,16
dword ptr [ebp-4],5
dword ptr [ebp-8],3
eax,dword ptr [bp-8]
eax
eax,dword ptr [bp-4]
eax
near ptr _swap_add
esp,16
dword ptr [ebpeax,dword ptr [ebpeax,dword ptr [ebp-
esp,ebp
ebp
45.
46.
47.
_swap_addpush
mov
lea
[ebp+8]
mov
lea
[ebp+12]
mov
lea
[ebp+8]
mov
lea
[ebp+12]
mov
mov
add
pop
ret
proc far
ebp
ebp,esp
ebx,dword ptr
edx,dword ptr [ebx]
ebx,dword ptr
ecx,dword ptr [ebx]
ebx,dword ptr
dword ptr [ebx],ecx
ebx,dword ptr
dword ptr [ebx],edx
eax,edx
eax,ecx
ebp
48.
49.
50.
51. Рекурсивные процедуры
52.
53.
54.
_fibproc
push
mov
sub
push
mov
cmp
jg
mov
@1@86:
jmp
@1@114:
mov
add
push
call
mov
mov
dec
push
call
far
bp
bp,sp
sp,4
si
si,word ptr [bp+6]
si,2
short @1@114
ax,1
short @1@142
ax,si
ax,-2
ax
near ptr _fib
word ptr [bp-2],ax
ax,si
ax
ax
near ptr _fib
mov
word ptr [bp-4],ax
mov
ax,word ptr [bp-2]
add
ax,word ptr [bp-4]
jmp
short @1@86
@1@142:
pop
si
mov
sp,bp
pop
bp
ret
_fib
endp