Program do analizy danych w pliku tekstowym

2015-01-26 20:56
0

Witam,
Mam do napisania taki o to program w Assemblerze:
Program do analizy danych w pliku tekstowym (nazwa pliku podawana przez użytkownika).
1.Zwraca liczbę znaków,
2.Zwraca statystę występowania poszczególnych liter w tekście.
Zostało mi do napisania drugi punkt czyli statystykę występowania liter.
Mniej więcej mam pomysł jak to można zrobić, ale moje umiejętności w tym języku są nie wielkie.
Więc tak myślałem zrobić sobie tablicę na 256 DWORD i zwiększać element w tej tablice odpowiadający kolejnemu wczytanemu z pliku znaku. Ale kompletnie nie wiem jak to napisać.
Proszę o pomoc.
Pozdrawiam.
nubmas666

edytowany 1x, ostatnio: nubmas666, 2015-01-26 20:57
Nie używaj prefiksów/postfiksów w tytułach wątków - od podawania nazwy języka/technologii są tagi; - furious programming 2015-01-26 23:33

Pozostało 580 znaków

2015-01-27 01:22
1

To akurat jest generalnie dość proste czego ci brakuje :) Załóżmy że masz tablicę zliczanie. To będzie dla 16 bitów ale dla 32 będzie wyglądać praktycznie tak samo

  1. Pobierasz znak z pliku, powiedzmy że masz go w al
  2. Wyliczamy sobie adres w tablicy zliczeń gdzie mamy coś zliczyć
    xor ah, ah
    mov si, offset zaliczanie
    add si, ax

    voila, teraz odwołanie do ds:[si] zwróci nam aktualny licznik dla znaku z al.

  3. Wczytujemy aktualną wartość, podbijamy i zapisujemy.
    mov bx, ds:[si]
    inc bx
    mov ds:[si], bx

    I już.


Masz problem? Pisz na forum, nie do mnie. Nie masz problemów? Kup komputer...

Pozostało 580 znaków

2015-01-27 11:56
0

Jeśli możesz mi jeszcze podpowiedzieć jak pobiera się jeden znak z ciągu tekstowego,albo z pliku.txt to już dalej sobie poradzę. (Mam nadzieję :D)

Pozostało 580 znaków

2015-01-27 12:00
0

I jeszcze frytki do tego? Otwórz manual do int 21h i poszukaj tam otwierania pliku i czytania z pliku.


Masz problem? Pisz na forum, nie do mnie. Nie masz problemów? Kup komputer...

Pozostało 580 znaków

Liczba odpowiedzi na stronę

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0