Przeskocz pasek nawigacyjny

Plik lancuchy.asm

Biblioteka Standardowa - Operacje na lancuchach znakow. Ostatnia modyfikacja kodu: 2021-02-25
Autor:
Bogdan 'bogdro' Drozdowski, bogdandr@op.pl (2004-06)

Podsumowanie funkcji
_lan_dl_porownaj
           Porownuje co najwyzej CX / ECX / RCX znakow z 2 lancuchow znakow zakonczonych bajtem zerowym. Makro: porownaj_dl lancucha pierwszego jest odpowiednio: mniejszy, rowny lub wiekszy niz odpowiedni fragment lancucha drugiego (w sensie ASCII).
_lan_dl_zcal
           Zcala 2 lancuchy znakow, dopisujac co najwyzej CX / ECX / RCX znakow z drugiego do pierwszego. Makro: zcal_dl
_lan_dlugosc
           Zwraca w dlugosc lancucha znakow (bez bajtu zerowego) wskazywanego przez DS:SI / ESI / RSI i zakonczonego bajtem zerowym. Makro: dlugosc.
_lan_na_duze
           Zamienia wszystkie litery na wielkie w lancuchu zakonczonym bajtem zerowym. Makro: na_duze
_lan_na_male
           Zamienia wszystkie litery na male w lancuchu zakonczonym bajtem zerowym. Makro: na_male.
_lan_odwroc
           Nadpisuje lancuch soba samym wspak. Makro: odwroc
_lan_policz
           Podaje ilosc wystapien znaku w podanym lancuchu. Makro: policz
_lan_porownaj
           Porownuje 2 lancuchy znakow zakonczone bajtem zerowym. Makro: porownaj odpowiednio: mniejszy, rowny lub wiekszy niz drugi (w sensie ASCII).
_lan_zamien
           Zamienia wszystkie wystapienia podanego znaku na inny znak. Makro: zamien
_lan_zcal
           Zcala 2 lancuchy znakow, dopisujac znaki z drugiego do pierwszego. Makro: zcal
_lan_znajdz
           Szuka drugiego lancucha w pierwszym. Makro: znajdz lub -1 w przypadku nieznalezienia.

Szczegóły funkcji

_lan_dl_porownaj

Porownuje co najwyzej CX / ECX / RCX znakow z 2 lancuchow znakow zakonczonych bajtem zerowym. Makro: porownaj_dl
Parametr:
CX / ECX / RCX - liczba bajtow do porownania.
Parametr:
DS:SI / ESI / RSI - adres pierwszego lancucha.
Parametr:
DS:DI / EDI / RDI - adres drugiego lancucha.
Zwraca:
AX / EAX / RAX = -1, 0, 1 (oraz odpowiednie flagi) gdy porownany fragment lancucha pierwszego jest odpowiednio: mniejszy, rowny lub wiekszy niz odpowiedni fragment lancucha drugiego (w sensie ASCII).

_lan_dl_zcal

Zcala 2 lancuchy znakow, dopisujac co najwyzej CX / ECX / RCX znakow z drugiego do pierwszego. Makro: zcal_dl
Parametr:
DS:SI / ESI / RSI - adres pierwszego lancucha.
Parametr:
DS:SI / EDI / RDI - adres drugiego lancucha.
Parametr:
CX / ECX / RCX - liczba znakow do dopisania

_lan_dlugosc

Zwraca w dlugosc lancucha znakow (bez bajtu zerowego) wskazywanego przez DS:SI / ESI / RSI i zakonczonego bajtem zerowym. Makro: dlugosc.
Parametr:
DS:SI / ESI / RSI - adres lancucha znakow
Zwraca:
AX / EAX / RAX - dlugosc lancuca znakow

_lan_na_duze

Zamienia wszystkie litery na wielkie w lancuchu zakonczonym bajtem zerowym. Makro: na_duze
Parametr:
DS:SI / ESI / RSI - adres lancucha znakow

_lan_na_male

Zamienia wszystkie litery na male w lancuchu zakonczonym bajtem zerowym. Makro: na_male.
Parametr:
DS:SI / ESI / RSI - adres lancucha znakow

_lan_odwroc

Nadpisuje lancuch soba samym wspak. Makro: odwroc
Parametr:
DS:SI / ESI / RSI - adres lancucha.

_lan_policz

Podaje ilosc wystapien znaku w podanym lancuchu. Makro: policz
Parametr:
DS:SI / ESI / RSI - adres lancucha.
Parametr:
AL - znak, ktorego wystapienia maja byc zliczane.
Zwraca:
AX / EAX / RAX - ilosc wystapien znaku

_lan_porownaj

Porownuje 2 lancuchy znakow zakonczone bajtem zerowym. Makro: porownaj
Parametr:
DS:SI / ESI / RSI - adres pierwszego lancucha.
Parametr:
DS:DI / EDI / RDI - adres drugiego lancucha.
Zwraca:
AX / EAX / RAX = -1, 0, 1 (oraz odpowiednie flagi) gdy lancuch pierwszy jest odpowiednio: mniejszy, rowny lub wiekszy niz drugi (w sensie ASCII).

_lan_zamien

Zamienia wszystkie wystapienia podanego znaku na inny znak. Makro: zamien
Parametr:
DS:SI / ESI / RSI - adres lancucha
Parametr:
AH - znak do znalezienia
Parametr:
AL - znak, ktory bedzie wstawiany w miejsce znalezionego.

_lan_zcal

Zcala 2 lancuchy znakow, dopisujac znaki z drugiego do pierwszego. Makro: zcal
Parametr:
DS:SI / ESI / RSI - adres pierwszego lancucha.
Parametr:
DS:DI / EDI / RDI - adres drugiego lancucha.

_lan_znajdz

Szuka drugiego lancucha w pierwszym. Makro: znajdz
Parametr:
DS:SI / ESI / RSI - adres pierwszego lancucha.
Parametr:
DS:DI / EDI / RDI - adres drugiego lancucha.
Zwraca:
AX / EAX / RAX = pozycja drugiego lancucha wzgledem poczatku pierwszego lub -1 w przypadku nieznalezienia.


Przeskocz pasek nawigacyjny