wordfrequency

Dependencies:   LCD_DISCO_F429ZI mbed TS_DISCO_F429ZI BSP_DISCO_F429ZI

Committer:
kaneyn
Date:
Sat Dec 05 21:12:01 2020 +0000
Revision:
0:349c994479c8
Child:
1:586013f67abf
s

Who changed what in which revision?

UserRevisionLine numberNew contents of line
kaneyn 0:349c994479c8 1 AREA Program4_F20_Nguyen, CODE, READONLY
kaneyn 0:349c994479c8 2
kaneyn 0:349c994479c8 3 //
kaneyn 0:349c994479c8 4 // R1 int32_t CountItems();
kaneyn 0:349c994479c8 5 // R2 int32_t SumAllFrequencies();
kaneyn 0:349c994479c8 6 // R3 uint8_t * GetWordAt(int32_t i); // NOTE: returns a pointer to a string
kaneyn 0:349c994479c8 7 // R4 int16_t GetFreqAt(int32_t i); // NOTE: return the value of the frequency count
kaneyn 0:349c994479c8 8 //
kaneyn 0:349c994479c8 9
kaneyn 0:349c994479c8 10 GLOBAL CountItems
kaneyn 0:349c994479c8 11 ;int32_t CountItems()
kaneyn 0:349c994479c8 12 CountItems
kaneyn 0:349c994479c8 13 //COUNT WORD
kaneyn 0:349c994479c8 14 ADR R1, table
kaneyn 0:349c994479c8 15 MOV R2, #0 ; count
kaneyn 0:349c994479c8 16 MOV R3, #0 ; ACCESS MEMORY
kaneyn 0:349c994479c8 17 loop
kaneyn 0:349c994479c8 18 LDRB R4, [R1, R3]
kaneyn 0:349c994479c8 19 CMP R4, #0
kaneyn 0:349c994479c8 20 BEQ leave
kaneyn 0:349c994479c8 21 ADD R2, #1
kaneyn 0:349c994479c8 22 ADD R3, #12
kaneyn 0:349c994479c8 23 b loop
kaneyn 0:349c994479c8 24 leave
kaneyn 0:349c994479c8 25 MOV R0, R2
kaneyn 0:349c994479c8 26 BX LR
kaneyn 0:349c994479c8 27
kaneyn 0:349c994479c8 28 GLOBAL SumAllFrequencies
kaneyn 0:349c994479c8 29 ;int32_t SumAllFrequencies()
kaneyn 0:349c994479c8 30 SumAllFrequencies
kaneyn 0:349c994479c8 31 GLOBAL GetWordAt
kaneyn 0:349c994479c8 32 ;uint8_t * GetWordAt(int32_t i)
kaneyn 0:349c994479c8 33 GetWordAt
kaneyn 0:349c994479c8 34 GLOBAL GetFreqAt
kaneyn 0:349c994479c8 35 ;int16_t GetFreqAt(int32_t i)
kaneyn 0:349c994479c8 36 GetFreqAt
kaneyn 0:349c994479c8 37
kaneyn 0:349c994479c8 38
kaneyn 0:349c994479c8 39
kaneyn 0:349c994479c8 40 table DCB "pears",0
kaneyn 0:349c994479c8 41 ALIGN 4
kaneyn 0:349c994479c8 42 DCW 8 ; Freq
kaneyn 0:349c994479c8 43 SPACE 2
kaneyn 0:349c994479c8 44 //-----------
kaneyn 0:349c994479c8 45
kaneyn 0:349c994479c8 46 DCB "apples",0
kaneyn 0:349c994479c8 47 ALIGN 4
kaneyn 0:349c994479c8 48 DCW 16
kaneyn 0:349c994479c8 49 SPACE 2
kaneyn 0:349c994479c8 50 //------------
kaneyn 0:349c994479c8 51 DCB "pie",0
kaneyn 0:349c994479c8 52 ALIGN 4
kaneyn 0:349c994479c8 53 space 4
kaneyn 0:349c994479c8 54 DCW 30
kaneyn 0:349c994479c8 55 SPACE 2
kaneyn 0:349c994479c8 56 //--------------
kaneyn 0:349c994479c8 57 DCB "beans",0
kaneyn 0:349c994479c8 58 ALIGN 4
kaneyn 0:349c994479c8 59 DCW 12
kaneyn 0:349c994479c8 60 SPACE 2
kaneyn 0:349c994479c8 61 DCB 0
kaneyn 0:349c994479c8 62
kaneyn 0:349c994479c8 63
kaneyn 0:349c994479c8 64
kaneyn 0:349c994479c8 65 END
kaneyn 0:349c994479c8 66
kaneyn 0:349c994479c8 67