Názor k článku Instrukční sada mikroprocesorů SuperH 2 (SH-2) od Pavel Tišnovský - Díky za zpětnou vazbu! Mě se tento procesor...

  • Článek je starý, nové názory již nelze přidávat.
  • 15. 9. 2016 10:05

    Pavel Tišnovský
    Zlatý podporovatel

    Díky za zpětnou vazbu! Mě se tento procesor hodně líbí, oni se odklonili od klasického RISCu (aka MIPS, AMD 29k, SPARC atd.) a skutečně vytvořili elegantní a interně asi pořád ještě jednoduchý design s několika DSP instrukcemi (MAC, možná bych sem zařadil i DIVx).

    Trošku jsem ten popis upravil ("dosah" adresování atd.), ale mám pocit, že MOVA pořád odpovídá spíše LEA; takto to mají do vyššího kódu přepsané autoři:

    MOVA(long d) /* MOVA @(disp,PC),R0 */
    {
    long disp;
    disp=(0x000000FF & (long)d);
    R[0]=(PC&0xFFFFFFFC)+(disp<<2);
    PC+=2;
    }

    A používá se to stylem:

    MOVA STR,R0   ; adresa retezce
    MOV.B @R0,R1 ; nacteni prvniho znaku

    nebo (nejaky cislicovy filtr):

    MOVA TBLM,R0  ; adresa prvniho pole -> R1
    MOV    R0,R1
    
    MOVA TBLN,R0  ; adresa druheho pole -> R0
    
    CLRMAC    ; vymaz MACH+MACL
    MAC.L @R0+,@R1+ ; krok filtru

    tj. načtení adres do R0 a R1 a potom v MAC.L použití registrů R0 a R1 pro adresování.