<!DOCTYPE html>
<html>
  <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
  </head>
  <body>
    Tak jsem to zkusil:<br>
    <br>
    1. Porty A a D přijmou 4B float hodnot a, b<br>
    2. Nahodí port C na 255<br>
    3. Spočítá x = a/b<br>
    4. Shodí port C na poslední idx<br>
    5. Pošle 4B float hodnoty x na port F<br>
    <br>
    Před příjmem a vysíláním posílá idx na port C<br>
    <br>
    (nebude fungovat úplně dobře, port F nemá všechny bity použitelné
    pro výstup a port D nemá nohu 0)<br>
    <br>
    ---------------<br>
    <font face="monospace">#include <avr/io.h> // AVR64DD32<br>
      <br>
      uint8_t    arrB[12];<br>
      float    *a = (float*)&arrB[0];<br>
      float    *b = (float*)&arrB[4];<br>
      float    *x = (float*)&arrB[8];<br>
      uint8_t    idx;<br>
      <br>
      int main(void) {<br>
      <br>
          PORTC.DIR = 255;<br>
          PORTF.DIR = 255;<br>
      <br>
          while (1) {<br>
              idx=0;<br>
      <br>
              PORTC.OUT = idx;<br>
              arrB[idx]=PORTA.IN; arrB[idx+4]=PORTD.IN; idx++;<br>
              PORTC.OUT = idx;<br>
              arrB[idx]=PORTA.IN; arrB[idx+4]=PORTD.IN; idx++;<br>
              PORTC.OUT = idx;<br>
              arrB[idx]=PORTA.IN; arrB[idx+4]=PORTD.IN; idx++;<br>
              PORTC.OUT = idx;<br>
              arrB[idx]=PORTA.IN; arrB[idx+4]=PORTD.IN; idx++;<br>
              <br>
              PORTC.OUT = 255;<br>
              *x = *a / *b;<br>
              <br>
              PORTC.OUT = idx;<br>
              PORTF.OUT = arrB[idx+4]; idx++;<br>
              PORTC.OUT = idx;<br>
              PORTF.OUT = arrB[idx+4]; idx++;<br>
              PORTC.OUT = idx;<br>
              PORTF.OUT = arrB[idx+4]; idx++;<br>
              PORTC.OUT = idx;<br>
              PORTF.OUT = arrB[idx+4]; idx++;<br>
          }<br>
      }</font><br>
    ----------------<br>
    Program Memory Usage     :    836 bytes   1,3 % Full<br>
    Data Memory Usage         :    18 bytes   0,2 % Full<br>
    -------------------<br>
    Hodiny jsou takhle nejspíš 24/6 = 4 MHz.<br>
    Porty ve vzduchu.<br>
    <br>
    Na C3 je asi 20µs stav 0 a  pak něco přes 125µs 0.<br>
    (vyšší bity nejsou vyvedeny)<br>
    Osciloskop hlásí 7,11 kHz.<br>
    <br>
    Na C0 synchronně s C3 objeví 0, pak jsou celkem 3 pulzy, poslední
    vzestupná asi 4µs před C0.<br>
    První 010 trvá malinko přes 5µs, zbytek je delší a všechny trochu
    plavou.<br>
    <br>
    Hmatání na vstupní porty nemá na C0 a C3 vliv, ale způsobuje
    poblikávání LEDky na F5.<br>
    ...<br>
    Aha tak má vliv, po hmatání je 6,92 kHz:-)<br>
    <br>
    A takhle dopad LSS fajl:<br>
    --------------------<font face="monospace"><br>
      mini-float-test-avr64dd32.elf:     file format elf32-avr<br>
      <br>
      Sections:<br>
      Idx Name          Size      VMA       LMA       File off  Algn<br>
        0 .data         00000006  00806000  0000033e  000003d2  2**0<br>
                        CONTENTS, ALLOC, LOAD, DATA<br>
        1 .text         0000033e  00000000  00000000  00000094  2**1<br>
                        CONTENTS, ALLOC, LOAD, READONLY, CODE<br>
        2 .bss          0000000c  00806006  00806006  000003d8  2**0<br>
                        ALLOC<br>
        3 .comment      00000030  00000000  00000000  000003d8  2**0<br>
                        CONTENTS, READONLY<br>
        4 .note.gnu.avr.deviceinfo 0000003c  00000000  00000000 
      00000408  2**2<br>
                        CONTENTS, READONLY<br>
        5 .debug_info   00001fac  00000000  00000000  00000444  2**0<br>
                        CONTENTS, READONLY, DEBUGGING<br>
        6 .debug_abbrev 00001dfe  00000000  00000000  000023f0  2**0<br>
                        CONTENTS, READONLY, DEBUGGING<br>
        7 .debug_line   0000016f  00000000  00000000  000041ee  2**0<br>
                        CONTENTS, READONLY, DEBUGGING<br>
        8 .debug_str    00000dee  00000000  00000000  0000435d  2**0<br>
                        CONTENTS, READONLY, DEBUGGING<br>
      <br>
      Disassembly of section .text:<br>
      <br>
      00000000 <__vectors>:<br>
         0:    0c 94 48 00     jmp    0x90    ; 0x90 <__ctors_end><br>
         4:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
         8:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
         c:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        10:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        14:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        18:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        1c:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        20:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        24:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        28:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        2c:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        30:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        34:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        38:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        3c:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        40:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        44:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        48:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        4c:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        50:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        54:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        58:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        5c:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        60:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        64:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        68:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        6c:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        70:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        74:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        78:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        7c:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        80:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        84:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        88:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
        8c:    0c 94 65 00     jmp    0xca    ; 0xca
      <__bad_interrupt><br>
      <br>
      00000090 <__ctors_end>:<br>
        90:    11 24           eor    r1, r1<br>
        92:    1f be           out    0x3f, r1    ; 63<br>
        94:    cf ef           ldi    r28, 0xFF    ; 255<br>
        96:    cd bf           out    0x3d, r28    ; 61<br>
        98:    df e7           ldi    r29, 0x7F    ; 127<br>
        9a:    de bf           out    0x3e, r29    ; 62<br>
      <br>
      0000009c <__do_copy_data>:<br>
        9c:    10 e6           ldi    r17, 0x60    ; 96<br>
        9e:    a0 e0           ldi    r26, 0x00    ; 0<br>
        a0:    b0 e6           ldi    r27, 0x60    ; 96<br>
        a2:    ee e3           ldi    r30, 0x3E    ; 62<br>
        a4:    f3 e0           ldi    r31, 0x03    ; 3<br>
        a6:    02 c0           rjmp    .+4          ; 0xac
      <__do_copy_data+0x10><br>
        a8:    05 90           lpm    r0, Z+<br>
        aa:    0d 92           st    X+, r0<br>
        ac:    a6 30           cpi    r26, 0x06    ; 6<br>
        ae:    b1 07           cpc    r27, r17<br>
        b0:    d9 f7           brne    .-10         ; 0xa8
      <__do_copy_data+0xc><br>
      <br>
      000000b2 <__do_clear_bss>:<br>
        b2:    20 e6           ldi    r18, 0x60    ; 96<br>
        b4:    a6 e0           ldi    r26, 0x06    ; 6<br>
        b6:    b0 e6           ldi    r27, 0x60    ; 96<br>
        b8:    01 c0           rjmp    .+2          ; 0xbc
      <.do_clear_bss_start><br>
      <br>
      000000ba <.do_clear_bss_loop>:<br>
        ba:    1d 92           st    X+, r1<br>
      <br>
      000000bc <.do_clear_bss_start>:<br>
        bc:    a2 31           cpi    r26, 0x12    ; 18<br>
        be:    b2 07           cpc    r27, r18<br>
        c0:    e1 f7           brne    .-8          ; 0xba
      <.do_clear_bss_loop><br>
        c2:    0e 94 67 00     call    0xce    ; 0xce <main><br>
        c6:    0c 94 9d 01     jmp    0x33a    ; 0x33a <_exit><br>
      <br>
      000000ca <__bad_interrupt>:<br>
        ca:    0c 94 00 00     jmp    0    ; 0x0 <__vectors><br>
      <br>
      000000ce <main>:<br>
        ce:    8f ef           ldi    r24, 0xFF    ; 255<br>
        d0:    80 93 40 04     sts    0x0440, r24    ; 0x800440
      <__TEXT_REGION_LENGTH__+0x7f0440><br>
        d4:    80 93 a0 04     sts    0x04A0, r24    ; 0x8004a0
      <__TEXT_REGION_LENGTH__+0x7f04a0><br>
        d8:    00 91 00 60     lds    r16, 0x6000    ; 0x806000
      <__DATA_REGION_ORIGIN__><br>
        dc:    10 91 01 60     lds    r17, 0x6001    ; 0x806001
      <__DATA_REGION_ORIGIN__+0x1><br>
        e0:    e0 90 04 60     lds    r14, 0x6004    ; 0x806004
      <a><br>
        e4:    f0 90 05 60     lds    r15, 0x6005    ; 0x806005
      <a+0x1><br>
        e8:    c0 90 02 60     lds    r12, 0x6002    ; 0x806002
      <b><br>
        ec:    d0 90 03 60     lds    r13, 0x6003    ; 0x806003
      <b+0x1><br>
        f0:    66 24           eor    r6, r6<br>
        f2:    63 94           inc    r6<br>
        f4:    82 e0           ldi    r24, 0x02    ; 2<br>
        f6:    78 2e           mov    r7, r24<br>
        f8:    93 e0           ldi    r25, 0x03    ; 3<br>
        fa:    89 2e           mov    r8, r25<br>
        fc:    99 24           eor    r9, r9<br>
        fe:    9a 94           dec    r9<br>
       100:    24 e0           ldi    r18, 0x04    ; 4<br>
       102:    a2 2e           mov    r10, r18<br>
       104:    35 e0           ldi    r19, 0x05    ; 5<br>
       106:    b3 2e           mov    r11, r19<br>
       108:    d6 e0           ldi    r29, 0x06    ; 6<br>
       10a:    c7 e0           ldi    r28, 0x07    ; 7<br>
       10c:    10 92 44 04     sts    0x0444, r1    ; 0x800444
      <__TEXT_REGION_LENGTH__+0x7f0444><br>
       110:    80 91 08 04     lds    r24, 0x0408    ; 0x800408
      <__TEXT_REGION_LENGTH__+0x7f0408><br>
       114:    80 93 06 60     sts    0x6006, r24    ; 0x806006
      <__data_end><br>
       118:    80 91 68 04     lds    r24, 0x0468    ; 0x800468
      <__TEXT_REGION_LENGTH__+0x7f0468><br>
       11c:    80 93 0a 60     sts    0x600A, r24    ; 0x80600a
      <__data_end+0x4><br>
       120:    60 92 44 04     sts    0x0444, r6    ; 0x800444
      <__TEXT_REGION_LENGTH__+0x7f0444><br>
       124:    80 91 08 04     lds    r24, 0x0408    ; 0x800408
      <__TEXT_REGION_LENGTH__+0x7f0408><br>
       128:    80 93 07 60     sts    0x6007, r24    ; 0x806007
      <__data_end+0x1><br>
       12c:    80 91 68 04     lds    r24, 0x0468    ; 0x800468
      <__TEXT_REGION_LENGTH__+0x7f0468><br>
       130:    80 93 0b 60     sts    0x600B, r24    ; 0x80600b
      <__data_end+0x5><br>
       134:    70 92 44 04     sts    0x0444, r7    ; 0x800444
      <__TEXT_REGION_LENGTH__+0x7f0444><br>
       138:    80 91 08 04     lds    r24, 0x0408    ; 0x800408
      <__TEXT_REGION_LENGTH__+0x7f0408><br>
       13c:    80 93 08 60     sts    0x6008, r24    ; 0x806008
      <__data_end+0x2><br>
       140:    80 91 68 04     lds    r24, 0x0468    ; 0x800468
      <__TEXT_REGION_LENGTH__+0x7f0468><br>
       144:    80 93 0c 60     sts    0x600C, r24    ; 0x80600c
      <__data_end+0x6><br>
       148:    80 92 44 04     sts    0x0444, r8    ; 0x800444
      <__TEXT_REGION_LENGTH__+0x7f0444><br>
       14c:    80 91 08 04     lds    r24, 0x0408    ; 0x800408
      <__TEXT_REGION_LENGTH__+0x7f0408><br>
       150:    80 93 09 60     sts    0x6009, r24    ; 0x806009
      <__data_end+0x3><br>
       154:    80 91 68 04     lds    r24, 0x0468    ; 0x800468
      <__TEXT_REGION_LENGTH__+0x7f0468><br>
       158:    80 93 0d 60     sts    0x600D, r24    ; 0x80600d
      <__data_end+0x7><br>
       15c:    90 92 44 04     sts    0x0444, r9    ; 0x800444
      <__TEXT_REGION_LENGTH__+0x7f0444><br>
       160:    f6 01           movw    r30, r12<br>
       162:    20 81           ld    r18, Z<br>
       164:    31 81           ldd    r19, Z+1    ; 0x01<br>
       166:    42 81           ldd    r20, Z+2    ; 0x02<br>
       168:    53 81           ldd    r21, Z+3    ; 0x03<br>
       16a:    f7 01           movw    r30, r14<br>
       16c:    60 81           ld    r22, Z<br>
       16e:    71 81           ldd    r23, Z+1    ; 0x01<br>
       170:    82 81           ldd    r24, Z+2    ; 0x02<br>
       172:    93 81           ldd    r25, Z+3    ; 0x03<br>
       174:    0e 94 da 00     call    0x1b4    ; 0x1b4 <__divsf3><br>
       178:    f8 01           movw    r30, r16<br>
       17a:    60 83           st    Z, r22<br>
       17c:    71 83           std    Z+1, r23    ; 0x01<br>
       17e:    82 83           std    Z+2, r24    ; 0x02<br>
       180:    93 83           std    Z+3, r25    ; 0x03<br>
       182:    a0 92 44 04     sts    0x0444, r10    ; 0x800444
      <__TEXT_REGION_LENGTH__+0x7f0444><br>
       186:    80 91 0e 60     lds    r24, 0x600E    ; 0x80600e
      <__data_end+0x8><br>
       18a:    80 93 a4 04     sts    0x04A4, r24    ; 0x8004a4
      <__TEXT_REGION_LENGTH__+0x7f04a4><br>
       18e:    b0 92 44 04     sts    0x0444, r11    ; 0x800444
      <__TEXT_REGION_LENGTH__+0x7f0444><br>
       192:    80 91 0f 60     lds    r24, 0x600F    ; 0x80600f
      <__data_end+0x9><br>
       196:    80 93 a4 04     sts    0x04A4, r24    ; 0x8004a4
      <__TEXT_REGION_LENGTH__+0x7f04a4><br>
       19a:    d0 93 44 04     sts    0x0444, r29    ; 0x800444
      <__TEXT_REGION_LENGTH__+0x7f0444><br>
       19e:    80 91 10 60     lds    r24, 0x6010    ; 0x806010
      <__data_end+0xa><br>
       1a2:    80 93 a4 04     sts    0x04A4, r24    ; 0x8004a4
      <__TEXT_REGION_LENGTH__+0x7f04a4><br>
       1a6:    c0 93 44 04     sts    0x0444, r28    ; 0x800444
      <__TEXT_REGION_LENGTH__+0x7f0444><br>
       1aa:    80 91 11 60     lds    r24, 0x6011    ; 0x806011
      <__data_end+0xb><br>
       1ae:    80 93 a4 04     sts    0x04A4, r24    ; 0x8004a4
      <__TEXT_REGION_LENGTH__+0x7f04a4><br>
       1b2:    ac cf           rjmp    .-168        ; 0x10c
      <__EEPROM_REGION_LENGTH__+0xc><br>
      <br>
      000001b4 <__divsf3>:<br>
       1b4:    0e 94 ee 00     call    0x1dc    ; 0x1dc
      <__divsf3x><br>
       1b8:    0c 94 63 01     jmp    0x2c6    ; 0x2c6
      <__fp_round><br>
       1bc:    0e 94 5c 01     call    0x2b8    ; 0x2b8
      <__fp_pscB><br>
       1c0:    58 f0           brcs    .+22         ; 0x1d8
      <__divsf3+0x24><br>
       1c2:    0e 94 55 01     call    0x2aa    ; 0x2aa
      <__fp_pscA><br>
       1c6:    40 f0           brcs    .+16         ; 0x1d8
      <__divsf3+0x24><br>
       1c8:    29 f4           brne    .+10         ; 0x1d4
      <__divsf3+0x20><br>
       1ca:    5f 3f           cpi    r21, 0xFF    ; 255<br>
       1cc:    29 f0           breq    .+10         ; 0x1d8
      <__divsf3+0x24><br>
       1ce:    0c 94 4c 01     jmp    0x298    ; 0x298 <__fp_inf><br>
       1d2:    51 11           cpse    r21, r1<br>
       1d4:    0c 94 97 01     jmp    0x32e    ; 0x32e
      <__fp_szero><br>
       1d8:    0c 94 52 01     jmp    0x2a4    ; 0x2a4 <__fp_nan><br>
      <br>
      000001dc <__divsf3x>:<br>
       1dc:    0e 94 74 01     call    0x2e8    ; 0x2e8
      <__fp_split3><br>
       1e0:    68 f3           brcs    .-38         ; 0x1bc
      <__divsf3+0x8><br>
      <br>
      000001e2 <__divsf3_pse>:<br>
       1e2:    99 23           and    r25, r25<br>
       1e4:    b1 f3           breq    .-20         ; 0x1d2
      <__divsf3+0x1e><br>
       1e6:    55 23           and    r21, r21<br>
       1e8:    91 f3           breq    .-28         ; 0x1ce
      <__divsf3+0x1a><br>
       1ea:    95 1b           sub    r25, r21<br>
       1ec:    55 0b           sbc    r21, r21<br>
       1ee:    bb 27           eor    r27, r27<br>
       1f0:    aa 27           eor    r26, r26<br>
       1f2:    62 17           cp    r22, r18<br>
       1f4:    73 07           cpc    r23, r19<br>
       1f6:    84 07           cpc    r24, r20<br>
       1f8:    38 f0           brcs    .+14         ; 0x208
      <__divsf3_pse+0x26><br>
       1fa:    9f 5f           subi    r25, 0xFF    ; 255<br>
       1fc:    5f 4f           sbci    r21, 0xFF    ; 255<br>
       1fe:    22 0f           add    r18, r18<br>
       200:    33 1f           adc    r19, r19<br>
       202:    44 1f           adc    r20, r20<br>
       204:    aa 1f           adc    r26, r26<br>
       206:    a9 f3           breq    .-22         ; 0x1f2
      <__divsf3_pse+0x10><br>
       208:    35 d0           rcall    .+106        ; 0x274
      <__divsf3_pse+0x92><br>
       20a:    0e 2e           mov    r0, r30<br>
       20c:    3a f0           brmi    .+14         ; 0x21c
      <__divsf3_pse+0x3a><br>
       20e:    e0 e8           ldi    r30, 0x80    ; 128<br>
       210:    32 d0           rcall    .+100        ; 0x276
      <__divsf3_pse+0x94><br>
       212:    91 50           subi    r25, 0x01    ; 1<br>
       214:    50 40           sbci    r21, 0x00    ; 0<br>
       216:    e6 95           lsr    r30<br>
       218:    00 1c           adc    r0, r0<br>
       21a:    ca f7           brpl    .-14         ; 0x20e
      <__divsf3_pse+0x2c><br>
       21c:    2b d0           rcall    .+86         ; 0x274
      <__divsf3_pse+0x92><br>
       21e:    fe 2f           mov    r31, r30<br>
       220:    29 d0           rcall    .+82         ; 0x274
      <__divsf3_pse+0x92><br>
       222:    66 0f           add    r22, r22<br>
       224:    77 1f           adc    r23, r23<br>
       226:    88 1f           adc    r24, r24<br>
       228:    bb 1f           adc    r27, r27<br>
       22a:    26 17           cp    r18, r22<br>
       22c:    37 07           cpc    r19, r23<br>
       22e:    48 07           cpc    r20, r24<br>
       230:    ab 07           cpc    r26, r27<br>
       232:    b0 e8           ldi    r27, 0x80    ; 128<br>
       234:    09 f0           breq    .+2          ; 0x238
      <__divsf3_pse+0x56><br>
       236:    bb 0b           sbc    r27, r27<br>
       238:    80 2d           mov    r24, r0<br>
       23a:    bf 01           movw    r22, r30<br>
       23c:    ff 27           eor    r31, r31<br>
       23e:    93 58           subi    r25, 0x83    ; 131<br>
       240:    5f 4f           sbci    r21, 0xFF    ; 255<br>
       242:    3a f0           brmi    .+14         ; 0x252
      <__divsf3_pse+0x70><br>
       244:    9e 3f           cpi    r25, 0xFE    ; 254<br>
       246:    51 05           cpc    r21, r1<br>
       248:    78 f0           brcs    .+30         ; 0x268
      <__divsf3_pse+0x86><br>
       24a:    0c 94 4c 01     jmp    0x298    ; 0x298 <__fp_inf><br>
       24e:    0c 94 97 01     jmp    0x32e    ; 0x32e
      <__fp_szero><br>
       252:    5f 3f           cpi    r21, 0xFF    ; 255<br>
       254:    e4 f3           brlt    .-8          ; 0x24e
      <__divsf3_pse+0x6c><br>
       256:    98 3e           cpi    r25, 0xE8    ; 232<br>
       258:    d4 f3           brlt    .-12         ; 0x24e
      <__divsf3_pse+0x6c><br>
       25a:    86 95           lsr    r24<br>
       25c:    77 95           ror    r23<br>
       25e:    67 95           ror    r22<br>
       260:    b7 95           ror    r27<br>
       262:    f7 95           ror    r31<br>
       264:    9f 5f           subi    r25, 0xFF    ; 255<br>
       266:    c9 f7           brne    .-14         ; 0x25a
      <__divsf3_pse+0x78><br>
       268:    88 0f           add    r24, r24<br>
       26a:    91 1d           adc    r25, r1<br>
       26c:    96 95           lsr    r25<br>
       26e:    87 95           ror    r24<br>
       270:    97 f9           bld    r25, 7<br>
       272:    08 95           ret<br>
       274:    e1 e0           ldi    r30, 0x01    ; 1<br>
       276:    66 0f           add    r22, r22<br>
       278:    77 1f           adc    r23, r23<br>
       27a:    88 1f           adc    r24, r24<br>
       27c:    bb 1f           adc    r27, r27<br>
       27e:    62 17           cp    r22, r18<br>
       280:    73 07           cpc    r23, r19<br>
       282:    84 07           cpc    r24, r20<br>
       284:    ba 07           cpc    r27, r26<br>
       286:    20 f0           brcs    .+8          ; 0x290
      <__divsf3_pse+0xae><br>
       288:    62 1b           sub    r22, r18<br>
       28a:    73 0b           sbc    r23, r19<br>
       28c:    84 0b           sbc    r24, r20<br>
       28e:    ba 0b           sbc    r27, r26<br>
       290:    ee 1f           adc    r30, r30<br>
       292:    88 f7           brcc    .-30         ; 0x276
      <__divsf3_pse+0x94><br>
       294:    e0 95           com    r30<br>
       296:    08 95           ret<br>
      <br>
      00000298 <__fp_inf>:<br>
       298:    97 f9           bld    r25, 7<br>
       29a:    9f 67           ori    r25, 0x7F    ; 127<br>
       29c:    80 e8           ldi    r24, 0x80    ; 128<br>
       29e:    70 e0           ldi    r23, 0x00    ; 0<br>
       2a0:    60 e0           ldi    r22, 0x00    ; 0<br>
       2a2:    08 95           ret<br>
      <br>
      000002a4 <__fp_nan>:<br>
       2a4:    9f ef           ldi    r25, 0xFF    ; 255<br>
       2a6:    80 ec           ldi    r24, 0xC0    ; 192<br>
       2a8:    08 95           ret<br>
      <br>
      000002aa <__fp_pscA>:<br>
       2aa:    00 24           eor    r0, r0<br>
       2ac:    0a 94           dec    r0<br>
       2ae:    16 16           cp    r1, r22<br>
       2b0:    17 06           cpc    r1, r23<br>
       2b2:    18 06           cpc    r1, r24<br>
       2b4:    09 06           cpc    r0, r25<br>
       2b6:    08 95           ret<br>
      <br>
      000002b8 <__fp_pscB>:<br>
       2b8:    00 24           eor    r0, r0<br>
       2ba:    0a 94           dec    r0<br>
       2bc:    12 16           cp    r1, r18<br>
       2be:    13 06           cpc    r1, r19<br>
       2c0:    14 06           cpc    r1, r20<br>
       2c2:    05 06           cpc    r0, r21<br>
       2c4:    08 95           ret<br>
      <br>
      000002c6 <__fp_round>:<br>
       2c6:    09 2e           mov    r0, r25<br>
       2c8:    03 94           inc    r0<br>
       2ca:    00 0c           add    r0, r0<br>
       2cc:    11 f4           brne    .+4          ; 0x2d2
      <__fp_round+0xc><br>
       2ce:    88 23           and    r24, r24<br>
       2d0:    52 f0           brmi    .+20         ; 0x2e6
      <__fp_round+0x20><br>
       2d2:    bb 0f           add    r27, r27<br>
       2d4:    40 f4           brcc    .+16         ; 0x2e6
      <__fp_round+0x20><br>
       2d6:    bf 2b           or    r27, r31<br>
       2d8:    11 f4           brne    .+4          ; 0x2de
      <__fp_round+0x18><br>
       2da:    60 ff           sbrs    r22, 0<br>
       2dc:    04 c0           rjmp    .+8          ; 0x2e6
      <__fp_round+0x20><br>
       2de:    6f 5f           subi    r22, 0xFF    ; 255<br>
       2e0:    7f 4f           sbci    r23, 0xFF    ; 255<br>
       2e2:    8f 4f           sbci    r24, 0xFF    ; 255<br>
       2e4:    9f 4f           sbci    r25, 0xFF    ; 255<br>
       2e6:    08 95           ret<br>
      <br>
      000002e8 <__fp_split3>:<br>
       2e8:    57 fd           sbrc    r21, 7<br>
       2ea:    90 58           subi    r25, 0x80    ; 128<br>
       2ec:    44 0f           add    r20, r20<br>
       2ee:    55 1f           adc    r21, r21<br>
       2f0:    59 f0           breq    .+22         ; 0x308
      <__fp_splitA+0x10><br>
       2f2:    5f 3f           cpi    r21, 0xFF    ; 255<br>
       2f4:    71 f0           breq    .+28         ; 0x312
      <__fp_splitA+0x1a><br>
       2f6:    47 95           ror    r20<br>
      <br>
      000002f8 <__fp_splitA>:<br>
       2f8:    88 0f           add    r24, r24<br>
       2fa:    97 fb           bst    r25, 7<br>
       2fc:    99 1f           adc    r25, r25<br>
       2fe:    61 f0           breq    .+24         ; 0x318
      <__fp_splitA+0x20><br>
       300:    9f 3f           cpi    r25, 0xFF    ; 255<br>
       302:    79 f0           breq    .+30         ; 0x322
      <__fp_splitA+0x2a><br>
       304:    87 95           ror    r24<br>
       306:    08 95           ret<br>
       308:    12 16           cp    r1, r18<br>
       30a:    13 06           cpc    r1, r19<br>
       30c:    14 06           cpc    r1, r20<br>
       30e:    55 1f           adc    r21, r21<br>
       310:    f2 cf           rjmp    .-28         ; 0x2f6
      <__fp_split3+0xe><br>
       312:    46 95           lsr    r20<br>
       314:    f1 df           rcall    .-30         ; 0x2f8
      <__fp_splitA><br>
       316:    08 c0           rjmp    .+16         ; 0x328
      <__fp_splitA+0x30><br>
       318:    16 16           cp    r1, r22<br>
       31a:    17 06           cpc    r1, r23<br>
       31c:    18 06           cpc    r1, r24<br>
       31e:    99 1f           adc    r25, r25<br>
       320:    f1 cf           rjmp    .-30         ; 0x304
      <__fp_splitA+0xc><br>
       322:    86 95           lsr    r24<br>
       324:    71 05           cpc    r23, r1<br>
       326:    61 05           cpc    r22, r1<br>
       328:    08 94           sec<br>
       32a:    08 95           ret<br>
      <br>
      0000032c <__fp_zero>:<br>
       32c:    e8 94           clt<br>
      <br>
      0000032e <__fp_szero>:<br>
       32e:    bb 27           eor    r27, r27<br>
       330:    66 27           eor    r22, r22<br>
       332:    77 27           eor    r23, r23<br>
       334:    cb 01           movw    r24, r22<br>
       336:    97 f9           bld    r25, 7<br>
       338:    08 95           ret<br>
      <br>
      0000033a <_exit>:<br>
       33a:    f8 94           cli<br>
      <br>
      0000033c <__stop_program>:<br>
       33c:    ff cf           rjmp    .-2          ; 0x33c
      <__stop_program></font><br>
    -----------------------<br>
    <br>
    PH<br>
    <br>
    <div class="moz-cite-prefix">Dne 23.04.2024 v 18:23 Martin Záruba
      napsal(a):<br>
    </div>
    <blockquote type="cite"
      cite="mid:7cb703c6-54fe-4272-8b16-5d4e30ee47ac@volny.cz">
      <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
      <font face="Arial">Spíš myslím, že podstatné je umět si
        představit, jak i jednoduchý kód v C vytvoří mnoho strojových
        instrukcí. Skoro si netroufám představit si, co je výsledkem,
        pokud bych použil float.</font><br>
    </blockquote>
  </body>
</html>