در زبان اسمبلی برای درست کردن یک شرط از دو دستور Cmp و Jump استفاده میشه و برای فهمیدن آن شما یک تیکه برنامه بنویسید مثل زیر :

procedure TForm1.FormCreate(Sender: TObject);
var
a,b:Integer;
begin
a:=1;
b:=1;
if a=b then begin
beep;
end;
end;


و بعد روی خطی که if قرار دارد Berakpoint بگذارید و برنامه را اجرا کنید و وقتی برنامه روی Breakpoint ایستاد به منوی View\Debug Winodws بروید و CPU رو انتخاب کنید و اونجا میتونید همزمان هم Assembly و هم زبان ماشین هر دستور Delphi رو ببینید !
و حتی دستوراتی که شما سورس شو ندارید (مثل Kernel Windows )رو به زبان ماشین و اسمبلی ببینید !

BA 01 00 00 00  mov edx,$00000001
3B D0 cmp edx,dax
7505 jnz (+$05)
E8 25 F1 Fb FF call Beep
C3 ret


و اگر شما از F8 استفاده کنید Step Over جلو میره (داخل Call نمیشود)
و اگر از F7 استفاده کنید Trace into جلو میره و داخل Call هم میره!