32bit mi naopak prijde jako velice vhodny assembler pro rucni programovani (alespon pro ARM7, kde clovek nemusi resit interlocky aby kod zbytecne necekal, ale da se i na ARM9). Po chvili cviku si clovek na tu symetrii celkem zvykne. Navic je ARM oproti jinym RISC celkem standardni (ma Carry flag, nema zpozdeny skok). Velkou vyhodou je take jednoducha instrukcni sada -- da se to naucit za den.
Naopak Thumb nemam zrovna moc rad, prijde mi ze pri rucnim programovani a dobrem vyuziti barrel shifteru ta vyhoda ve vyssi hustote kodu neni zase tak podstatna (protoze proti ni pusoubi taky dvouadresovost, taky nemuzu pouzivat vsechny registry libovolne ale nizsih 8 a vyssich 8 je oddeleno, coz zpusobuje ze nakonec tech instrukci potrebuju vic takze to bezi pomaleji a neni to ani o mnoho mensi).
Podle mych zkusenosti je dobre mit alespon povedomi o to, na cem vlastne ten ceckovy program (po prelozeni) pobezi a jake jsou tedy zakladni vlastnosti te ktere architektury.
Napriklad diky existenci bitu Carry (nektere procesory ho nemaji) lze rici, ze asi bude docela jednoducha implementace viceslovni aritmetiky (i kdyz docela pochybuji, ze to nekdo dokaze optimalne napsat v cecku :-), jak se bude cecko chovat ke statickym promennym, jak a zda vubec se bude provadet zarovnavani operandu, jestli je vubec mozne efektivne provadet aritmeticky posun doprava (na 6502 se to muselo hackovat) atd. atd.
On ARM je z tohoto pohledu vlastne docela "mainstreamovy" procesor, ale na nejakem DSP se clovek muze divit, ze treba char vlastne nema osm bitu, ze float/double nejsou podle IEEE 754 atd.