SHOW:
|
|
- or go back to the newest paste.
| 1 | //--------------PROGRAM 2--------------// | |
| 2 | ||
| 3 | // Arithmetic | |
| 4 | AREA ARITH, CODE, READONLY | |
| 5 | ENTRY | |
| 6 | LDR R1, =20 | |
| 7 | LDR R2, =25 | |
| 8 | ADD R3, R1, R2 | |
| 9 | SUB R4, R1, R2 | |
| 10 | MUL R5, R1, R2 | |
| 11 | STOP B STOP | |
| 12 | END | |
| 13 | ||
| 14 | // Logic | |
| 15 | AREA LOGIC, CODE, READONLY | |
| 16 | ENTRY | |
| 17 | LDR R0, =5 | |
| 18 | LDR R1, =3 | |
| 19 | AND R4, R0, R1 | |
| 20 | ORR R5, R0, R1 | |
| 21 | EOR R6, R0, R1 | |
| 22 | BIC R7, R0, R1 | |
| 23 | STOP B STOP | |
| 24 | END | |
| 25 | ||
| 26 | // Data Transfer | |
| 27 | AREA DATATRANSFER, CODE, READONLY | |
| 28 | ENTRY | |
| 29 | LDR R9, =SRC | |
| 30 | LDR R10, =DST | |
| 31 | LDMIA R9!, {R0 - R7}
| |
| 32 | STMIA R10!, {R0 - R7}
| |
| 33 | SRC DCD 1, 2, 3, 4, 5, 6, 7, 8 | |
| 34 | AREA BLOCKDATA, DATA, READWRITE | |
| 35 | DST DCD 0, 0, 0, 0, 0, 0, 0, 0 | |
| 36 | END | |
| 37 | ||
| 38 | ||
| 39 | //--------------PROGRAM 3--------------// | |
| 40 | ||
| 41 | ||
| 42 | AREA SUM, CODE, READONLY | |
| 43 | ENTRY | |
| 44 | LDR R0, =NUM | |
| 45 | LDRH R1, [R0] | |
| 46 | LDRH R2, [R0, #2] | |
| 47 | MUL R3, R1, R2 | |
| 48 | STOP B STOP | |
| 49 | NUM DCW 0X0006, 0X004D | |
| 50 | END | |
| 51 | ||
| 52 | ||
| 53 | //--------------PROGRAM 4--------------// | |
| 54 | ||
| 55 | AREA SUM, CODE, READONLY | |
| 56 | ENTRY | |
| 57 | LDR R0, =ARRAY | |
| 58 | LDR R1, =10 | |
| 59 | LDR R2, =0 | |
| 60 | NEXT | |
| 61 | LDR R3, [R0], #4 | |
| 62 | ADD R2, R2, R3 | |
| 63 | SUB R1, R1, #1 | |
| 64 | CMP R1, #0 | |
| 65 | BNE NEXT | |
| 66 | ARRAY DCD 1, 2, 3, 4, 5, 6, 7, 8, 9, 10 | |
| 67 | END | |
| 68 | ||
| 69 | ||
| 70 | //--------------PROGRAM 5--------------// | |
| 71 | ||
| 72 | // Smallest Number | |
| 73 | ||
| 74 | AREA SMALLEST_ARRAY, CODE, READONLY | |
| 75 | ENTRY | |
| 76 | MOV R0, #5 | |
| 77 | LDR R1, =ARRAY | |
| 78 | LDR R2, [R1], #4 | |
| 79 | LOOP | |
| 80 | LDR R3, [R1], #4 | |
| 81 | CMP R2, R3 | |
| 82 | BLT NEXT // change to BHI for largest number | |
| 83 | MOV R2, R3 | |
| 84 | NEXT SUBS R0, R0, #1 | |
| 85 | BNE LOOP | |
| 86 | STOP B STOP | |
| 87 | ARRAY DCD 3, 5, 2, 1, 4, 9 | |
| 88 | END | |
| 89 | ||
| 90 | ||
| 91 | //--------------PROGRAM 6--------------// | |
| 92 | ||
| 93 | AREA OZ, CODE, READONLY | |
| 94 | ENTRY | |
| 95 | MOV R2, #0 | |
| 96 | MOV R3, #0 | |
| 97 | MOV R7, #2 | |
| 98 | LDR R6, =NUM | |
| 99 | LOOP MOV R1, #32 | |
| 100 | LDR R0, [R6], #4 | |
| 101 | LOOP0 MOVS R0, R0, ROR #1 | |
| 102 | BHI ONES | |
| 103 | ZEROES ADD R3, R3, #1 | |
| 104 | B LOOP1 | |
| 105 | ONES ADD R2, R2, #1 | |
| 106 | LOOP1 SUBS R1, R1, #1 | |
| 107 | BNE LOOP0 | |
| 108 | SUBS R7, R7, #1 | |
| 109 | BNE LOOP | |
| 110 | STOP B STOP | |
| 111 | NUM DCD 0x5, 0x7 | |
| 112 | - | END |
| 112 | + | END |
| 113 | ||
| 114 | ||
| 115 | //---------------ascending/descending-----------------// | |
| 116 | #include <lpc21xx.h> | |
| 117 | int main(){
| |
| 118 | unsigned long int temp,arr[4]={0x00000004, 0x00000003, 0x00000002, 0x00000001};
| |
| 119 | unsigned char i,j,n=4; | |
| 120 | for(i=0;i<n-1;i++){
| |
| 121 | for(j=0;j<n-1;j++){
| |
| 122 | if(arr[j]>arr[j+1]){
| |
| 123 | temp=arr[j]; | |
| 124 | arr[j]=arr[j+1]; | |
| 125 | arr[j+1]=temp; | |
| 126 | } | |
| 127 | } | |
| 128 | } | |
| 129 | } | |
| 130 | ||
| 131 | ||
| 132 | //-------------case conversion------------------------// | |
| 133 | #include <lpc21xx.h> | |
| 134 | int main(){
| |
| 135 | unsigned char c[10]="abcdAB"; | |
| 136 | unsigned int i,j; | |
| 137 | for(i=0;i<=10;i++){
| |
| 138 | j=(int)c[i]; | |
| 139 | if(j>=65 && j<=90){ j=j+32;}
| |
| 140 | else {j=j-32;}
| |
| 141 | c[i]=(char)j; | |
| 142 | } | |
| 143 | } | |
| 144 | ||
| 145 | //--------------------factorial----------------------// | |
| 146 | #include <lpc21xx.h> | |
| 147 | int main(){
| |
| 148 | unsigned long n=5, fact=1; | |
| 149 | unsigned char i; | |
| 150 | if(n==0){
| |
| 151 | fact=1; | |
| 152 | } | |
| 153 | else if(n>0){
| |
| 154 | for(i=1;i<=n;i++){
| |
| 155 | fact=fact*i; | |
| 156 | } | |
| 157 | } | |
| 158 | } |