Vergadering programmering

M

madmax

Guest
Ik wil weten hoe een programma in C die minder instructie cyclus dwz in overeenstemming assemblage maakt gebruik van de programmering in het achterhoofd te schrijven.

Heeft iemand enig notities met betrekking tot deze.

Thanx in advance.

Max

 
Zoals ik weet, bestaat alleen voor manieren om dit te doen:

1.Inline assembler

eg.

/ / C functie
void MyCfunction ()
(
/ / ASM inline snip
ASM
(
/ / ASM code
)
)

2.Compileren volledig ASM bron, die de uitvoer
aantal functies en link verkregen object
bestand met gecompileerde C-modules.

 
Bedankt vlek,

Kan iemand mij voorzien van notities met betrekking tot,

programmering van de verschillende technieken als de prestaties in aanmerking komt,

Bijvoorbeeld: switch statement voert sneller dan wanneer statements.So wanneer de snelheid in aanmerking komt haar beter te gebruiken dan wanneer schakelen.

Thanx in Advance,

Max
[/ i]

 
madmax schreef:Bijvoorbeeld: switch statement voert sneller dan wanneer statements.So wanneer de snelheid in aanmerking komt haar beter te gebruiken dan wanneer schakelen.

[/ i]
 
Er zijn vele technieken zoals:
Omgaan Scalared Arrays dan Vectored Arrays ....
Kleine Loops Unroling ....
Ga tafels ...
LUT ...
enz. ..

Dit gebied is groot en moet worden behandeld door het lezen van boeken over Embedded Programming.
Last edited by roli op 14 jan 2003 14:43; bewerkten in totaal 1 keer

 
Hi Max

dat hangt af van de compiler.Optimaliseren compilers hebben opties die het mogelijk maken te optimaliseren voor het geheugen gebruik, optimaliseren voor snelheid, compromis, enz. Someones in staat te stellen nader te specificeren hoe de verschillende situaties te behandelen.

Een schakelaar kan worden opgesteld op verschillende manieren door dezelfde compiler afhankelijk van de gevallen.Bijvoorbeeld, als de zaken van een schakelaar zijn "random" getallen, de resulterende code kan hetzelfde zijn als wanneer u gebruikt als-elseif statements.Maar als de zaken zijn correlatieve nummers, de resulterende code kan gebruik maken van een look-up tafel adressen voor het springen, is wat beter, zowel in snelheid en geheugengebruik.

Een typische situatie die ik gebruik is een eindige-state machine gebouwd met een schakelaar.Definieer ik de staten met enum, deze verzekert dat ze correlatieve nummers vanaf nul, en de compiler (als het is slim) kunnen profiteren van deze.
In veel gevallen is het nuttig om de assemblage-code wordt gegenereerd door de compiler te onderzoeken en te optimaliseren evetually het "bij de hand" in een van de manieren genoemd door stainwood (indien uw code niet hoeven te worden naar andere draagbare processoren) als je eenmaal hebt debugged tour programma (getest dat je algoritme correct is).

Ik heb geen enkel document bij de hand om u te sturen (sorry), op minder Ik hoop dat dit helpt.
groeten

Z

 
Om te bereiken wat je wilt:

- Je moet meester assembler.De kunst van het parlement is een echt goed
boek.Ik weet zeker dat je kan pakken in e-boekvorm door hier.
- Compile test programma's assembler code om te zien hoe uw
compiler zich gedraagt.Elke compiler en elke optimalisatie is een wereld.Zoek naar dat boek.Echt goed voor wat je wilt.

 
Thanx voor iedereen.

Ik heb het concept van de programmering technieken.
Ook Deep Ik las een deel van de PDF-en het echt helpt me more.Thanx a lot!Max

 
suwanpech, dit is MIPSpro Assembly Language Programmer's Guide,
het is openbaar en gemaakt door Silicon Graphics!
Geniet Vol 1 en Vol 2

[reposted uploaden als gevolg van recente elektroda hacking en gehechtheid schrapping]
Sorry, maar je moet inloggen om deze gehechtheid

 
Ik ook toevoegen voor uw mips montage plezier, het gratis openbaar domein:

MIPS R4000 Microprocessor User's Manual
2nd ed..
Sorry, maar je moet inloggen om deze gehechtheid

 

Welcome to EDABoard.com

Sponsor

Back
Top