Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependencies: mbed
main.cpp@3:b11d25e57ddd, 2019-03-06 (annotated)
- Committer:
- zonzon14
- Date:
- Wed Mar 06 15:38:30 2019 +0000
- Revision:
- 3:b11d25e57ddd
- Parent:
- 2:83422444c6e5
- Child:
- 4:050482cd9d95
finished working project2
Who changed what in which revision?
| User | Revision | Line number | New contents of line |
|---|---|---|---|
| zonzon14 | 0:12c36bcf88f3 | 1 | #include "mbed.h" |
| zonzon14 | 0:12c36bcf88f3 | 2 | |
| zonzon14 | 2:83422444c6e5 | 3 | Timer t1; |
| zonzon14 | 3:b11d25e57ddd | 4 | |
| zonzon14 | 2:83422444c6e5 | 5 | #define Thumb_mult(d,s) __asm {\ |
| zonzon14 | 2:83422444c6e5 | 6 | MULS d,s;} |
| zonzon14 | 2:83422444c6e5 | 7 | #define Thumb2_mult(d,m,s) __asm {\ |
| zonzon14 | 3:b11d25e57ddd | 8 | MULS d,m,s;} |
| zonzon14 | 3:b11d25e57ddd | 9 | #define Thumb_add(d,s) __asm {\ |
| zonzon14 | 3:b11d25e57ddd | 10 | ADDS d,s;} |
| zonzon14 | 3:b11d25e57ddd | 11 | #define Thumb2_add(d,n,s) __asm {\ |
| zonzon14 | 3:b11d25e57ddd | 12 | ADDS d,n,s;} |
| zonzon14 | 2:83422444c6e5 | 13 | |
| zonzon14 | 0:12c36bcf88f3 | 14 | |
| zonzon14 | 0:12c36bcf88f3 | 15 | int main() { |
| zonzon14 | 2:83422444c6e5 | 16 | |
| zonzon14 | 2:83422444c6e5 | 17 | register uint32_t r0= 0xA; |
| zonzon14 | 2:83422444c6e5 | 18 | register uint32_t r1= 0x3; |
| zonzon14 | 2:83422444c6e5 | 19 | register uint32_t r2= 0x0; |
| zonzon14 | 2:83422444c6e5 | 20 | t1.start(); |
| zonzon14 | 2:83422444c6e5 | 21 | Thumb_mult(r1,r0); |
| zonzon14 | 2:83422444c6e5 | 22 | t1.stop(); |
| zonzon14 | 3:b11d25e57ddd | 23 | printf("the answer is %d\n", r1); |
| zonzon14 | 3:b11d25e57ddd | 24 | printf("The time taken for thumb mult was %f seconds\n", t1.read()); |
| zonzon14 | 3:b11d25e57ddd | 25 | |
| zonzon14 | 3:b11d25e57ddd | 26 | r1=0x3; |
| zonzon14 | 3:b11d25e57ddd | 27 | t1.start(); |
| zonzon14 | 2:83422444c6e5 | 28 | Thumb2_mult(r2,r1,r0); |
| zonzon14 | 3:b11d25e57ddd | 29 | t1.stop(); |
| zonzon14 | 3:b11d25e57ddd | 30 | printf("the answer is %d\n", r2); |
| zonzon14 | 3:b11d25e57ddd | 31 | printf("The time taken for thumb2 mult was %f seconds\n", t1.read()); |
| zonzon14 | 3:b11d25e57ddd | 32 | |
| zonzon14 | 3:b11d25e57ddd | 33 | printf("\n"); |
| zonzon14 | 3:b11d25e57ddd | 34 | t1.start(); |
| zonzon14 | 3:b11d25e57ddd | 35 | Thumb_add(r1,r0); |
| zonzon14 | 3:b11d25e57ddd | 36 | t1.stop(); |
| zonzon14 | 3:b11d25e57ddd | 37 | printf("the answer is %d\n", r1); |
| zonzon14 | 3:b11d25e57ddd | 38 | printf("The time taken for thumb add was %f seconds\n", t1.read()); |
| zonzon14 | 3:b11d25e57ddd | 39 | |
| zonzon14 | 3:b11d25e57ddd | 40 | r1=0x3; |
| zonzon14 | 3:b11d25e57ddd | 41 | t1.start(); |
| zonzon14 | 3:b11d25e57ddd | 42 | Thumb2_add(r2,r1,r0); |
| zonzon14 | 3:b11d25e57ddd | 43 | t1.stop(); |
| zonzon14 | 3:b11d25e57ddd | 44 | printf("the answer is %d\n", r2); |
| zonzon14 | 3:b11d25e57ddd | 45 | printf("The time taken for thumb2 add was %f seconds\n", t1.read()); |
| zonzon14 | 3:b11d25e57ddd | 46 | |
| zonzon14 | 3:b11d25e57ddd | 47 | |
| zonzon14 | 3:b11d25e57ddd | 48 | |
| zonzon14 | 2:83422444c6e5 | 49 | |
| zonzon14 | 2:83422444c6e5 | 50 | |
| zonzon14 | 2:83422444c6e5 | 51 | |
| zonzon14 | 0:12c36bcf88f3 | 52 | } |