Asembler, najmniejszy element tablicy, jak to działa?

Asembler, najmniejszy element tablicy, jak to działa?
N3
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 6
0

Mam tutaj kod asemblera który ma znaleźć najmniejszy element tablicy (kod raczej jest poprawny, choć nie dam sobie ręki uciąć), proszę o komentarze do każdej linijki jak on działa.

            .MODEL TINY

Kod SEGMENT

            ORG   100h
            ASSUME   CS:Kod, DS:Kod, SS:Kod

Start:
jmp Poczatek
DL_TABLICA EQU 11
Tablica DB 01h, 02h, 00h, 10h, 12h, 33h, 15h, 09h, 11h, 08h, 0Ah, 00h
Najmniejsza DB ?

Poczatek:
mov cx, DL_TABLICA
mov bp, OFFSET Tablica
mov bh, [bp]

Petla:
inc bp
mov ah, [bp]
cmp ah, bh
jae Skok
mov bh, ah

Skok:
LOOP Petla
mov bp, OFFSET Najmniejsza
mov [bp], bh
mov ax, 4C00h
int 21h

Kod ENDS

END START

Spine
  • Rejestracja: dni
  • Ostatnio: dni
  • Postów: 6969
0

http://bfy.tw/4g3y

Sprawdź składnię każdej instrukcji i będziesz wiedział co każda linijka oznacza.

Shalom
  • Rejestracja: dni
  • Ostatnio: dni
  • Lokalizacja: Space: the final frontier
  • Postów: 26433
0

Na oko kod jest ok.
Czego konkretnie nie rozumiesz?

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.