 |
::
Меню :: |
 |
|
|
 |
::
Друзі :: |
 |
|
|
 |
::
Лічильники :: |
 |
|
|
|
Допоможіть з асемблером
Nikita Suff
Допоможіть з асемблером
(8*b+1-c)/(a/2+b*c) обчислити
Відповіді:
?????? ?
main: out 0x34, r1; 52 ldi r24, 0x18; 24 in r0, 0x3f; 63 cli out 0x21, r24; 33 out 0x21, r1; 33 out 0x3f, r0; 63 ldi r24, 0x0A; 10 ldi r25, 0x00; 0 sts 0x007D, r25 sts 0x007C, r24 ldi r24, 0x14; 20 ldi r25, 0x00; 0 sts 0x0061, r25 sts 0x0060, r24 ldi r24, 0x1E; 30 ldi r25, 0x00; 0 sts 0x007B, r25 sts 0x007A, r24 lds r30, 0x0060 lds r31, 0x0061 lds r22, 0x007A lds r23, 0x007B lds r24, 0x007C lds r25, 0x007D lds r20, 0x0060 lds r21, 0x0061 lds r18, 0x007A lds r19, 0x007B ldi r26, 0x03; 3 add r30, r30 adc r31, r31 dec r26 brne.-8; main+0x5c sub r30, r22 sbc r31, r23 movw r22, r18 mul r22, r20 movw r18, r0 mul r22, r21 add r19, r0 mul r23, r2 r2 r2 r2 r2 2 ldi r23, 0x00; 0 call 0x2d2; __divmodhi4 add r18, r22 adc r19, r23 movw r24, r30 adiw r24, 0x01; 1 movw r22, r18 call 0x2d2; __divmodhi4 sts 0x0063, r23 sts 0x0062, r22 rjmp.-2; main+0x96 __divmodhi4: bst r25, 7 mov r0, r25 eor r0, r23 rcall .+20; __divmodhi4_neg1 sbrc r23, 7 rcall .+8 ; __divmodhi4_neg2 rcall .+24; __udivmodhi4 rcall .+12; __divmodhi4_neg1 and r0, r0 brpl. +6; __divmodhi4_exit __divmodhi4_neg2: com r23 neg r22 sbci r23, 0xFF ; 255 __divmodhi4_exit: ret __divmodhi4_neg1: brtc.-4; __divmodhi4_exit com r25 neg r24 sbci r25, 0xFF; 255 ret __udivmodhi4: sub r26, r26 sub r27, r27 ldi r21, 0x11; 17 rjmp. +14; __udivmodhi4_ep __udivmodhi4_loop: adc r26, r26 adc r27, r27 cp r26, r22 cpc r27, r23 brcs .+4; __udivmodhi4_ep sub r26, r22 sbc r27, r23 __udivmodhi4_ep: adc r24, r24 adc r25, r25 dec r21 brne.-22; __udivmodhi4_loop com r24 com r25 movw r22, r24 movw r24, r26 ret _exit: cli для avr це виглядало б так
shizout
mov rax, 8 xor rdx, rdx imul qword [b]; rax = 8 * b inc rax; rax = 8 * b + 1 sub rax, [c]; rax = 8*b+1-c push rax mov rax, [a] xor rdx, rdx mov rbx, 2 idiv rbx; rax = a/2 mov rbx, rax; rbx = a/2 mov rax, xor rdx, rdx imul qword [c] ; rax = b * c add rbx, rax; rbx = a/2+b*c xor rdx, rdx pop rax idiv rbx; rax = (8*b+1-c)/(a/2+b*c)
|
 |
::
Наша кнопка :: |
 |
|
 |
Отримати код:
|
Підтримайте наш сайт і розмістіть нашу
кнопку на своєму ресурсі. |
|
|
 |
::
Популярне :: |
 |
|
|
 |
:: Посилання :: |
 |
|
|
|