Gå til innhold

Geek_Master

Medlemmer
  • Innlegg

    85
  • Ble med

  • Besøkte siden sist

Innlegg skrevet av Geek_Master

  1. Assembler for pc'er er tricky da du via OS'er som Windows ikke får direkte tilgang til hardware som er plugga i (Skjermkort/lydkort t.eks). Så du er avhengig av å bruke biblioteker (eller lage dine egne) for å accessere hardwaren som er plugga i PC'en din via driverne. Dette er fordi at pc'ene i dag har så jævlig masse forskjellige typer hardware og det ville være upraktisk å skrive drivere i din software for å dekke alt sammen. I tilegg får du ikke lov til dette av sikkerhetsmessige grunner.

     

    MEN det du kan gjøre er en av to ting. Skaff deg en gammel traver fra fortiden (f.eks. ei commodore 64 eller ei amiga) og lær deg assembler der. Prinsippene er i utgangspunktet det samme, flytte og behandle data for å oppnå det du ønsker. Og her kan du skrive direkte til hardware. Her kan du bruke emulatorer for å kjøre disse maskinene på PC på lik linje som om at du hadde en virkelig maskin. Men best er originalene seff^^

     

    Det andre du kan gjøre er å bruke et "høynivå språk" som innpakning til de assembler rutinene du ønsker å skrive på pc. Her anbefaler jeg freebasic som er enkelt å bruke og lar deg bruke in-line assembler samt kalle opp bibliotek filer. Har også et bra forum der du kan få hjelp.

     

    Morfaren din har sikkert skillz til begge disse alternativene, og hvis ikke så er det tonnevis av materiale online.

     

    Hvorfor bumper du en 2 år gammel tråd?

  2. Jeg går ut ifra at du mener at

    #include <iostream> // allows to perform input and output

    står inne i file Integer.h

     

    Når du bruker #include <FilnavN> så leter preprosessoren kun i noen bestemte include-mapper etter filen FilnavN, og den titter ikke i samme mappe som cpp-filen.

     

    Når du bruker #include "FilnavN" så leter preprosessoren først i mappen cpp-filen er i, så leter den i de samme mappene som den ville sett i om du hadde brukt <FilnavN>.

     

    #include bare setter inn teksten i fila den blir bedt om å lete etter. Så når du bruker #include "Integer.h", så setter den inn teksten #include <iostream> på linja der det sto #include "Integer.h". Deretter bytter den ut linja #include <iostream> med innholdet i iostream, som ligger i preprosessorens include-mapper.

     

    Om jeg ikke inkluderer iostream (enten ved include <iostream> eller include "Integer.h" med include <iostream> i) så nekter programmet mitt å kompileres. Det er ikke en gammel versjon av programmet der du ikke hadde med utksrift av sum som kommer når kompilatoeren ikke finner iostream?

     

    Du deler foresten på number5 i stedet for å legge det til.

     

    Jeg vet det, det var egentlig poenget å prøvenoe som ikke var brukt i noen eksempler.

    Takk for alle svarene.

  3. Her står det ganske godt forklart:

    http://en.wikipedia.org/wiki/C_preprocessor

     

    Håpet på en forklaring på norsk, fant ikke noe på google.

     

    PreProssesore er en prosess for skjer før kompileringen, det blir blandt annet "variabler" fra #define plasert ut... man kan si at alle (det er alle ikke sant?) "funksjoner" som starter med # er ment for preprossesoren.

     

    f. eks.

    #include "fil" klasker innholdet til "fil" på linjen #include står.

     

    så kompileres det.

     

    Du som bruker vc kjenner sikkert #pragma (kompilatore setting) once som gjør headeren ikke blir includert flere ganger.

     

    Her er noe jeg har skrevet på CodeWiki Preprosessor(C/C++)

     

    Hvilken include du bruker er spiller her ingen rolle.

     

    Ligger headeren i samme windows mappe som source filen?

    Hvis den ikke gjør det så må du legge til mappen ved å gå inn på prosjekt instillinger -> c/c++ -> General -> Additional Include Directories

     

    Lykke til

     

    Preprocessor er en prosess utført før kompileringen altså.

    Men når jeg bruker "" så lukker den seg ikke mens når jeg bruker <> så lukker programmet seg uten å gi svaret.

    Og nei jeg har ikke hørt om #pragma, hva er det forresten?

     

    Takk for svaret Giddion.

  4. Jeg fant ut av det.

     

    #include <filnavn> står det at: the preprocessor searches for a specified file in an implementation-dependent manner, normally through predesignated directories.

    #include "filnavn" står det at: the preprocessor searches first in the same directory as the file is beeing compiled, then in the same implementation-dependent manner as for the files with enclosed brackets.

     

    EDIT: orker ikke oversette

     

    EDIT: Kan noen forklare meg nøyaktig hva en c++ preprocessor, forstår det ikke helt?

  5. Jeg laget dette som en liten udvidelse av et eksempel, men hver gang jeg skriver inn de fem tallene i programmet så lukker det seg uten å gi meg summen. Her er koden:

    #include <iostream> // allows to perform input and output

     

    #include <Integer.h>
    
    // Function main begins program execution
    int main()
    {	// Opening brace for function main
    int number1; // first integer to add
    int number2; // second integer to add
    int number3; // third integer to add
    int number4; // fourth integer to add which multiplies
    int number5; // fifth integer to add which divides
    int sum; // the value of the numbers after addision, substraction, multiplieing and dividing
    
    std::cout << "Enter the first integer: "; // Ask user for the first integer
    std::cin >> number1; // reads the first integer from user in to number1
    
    std::cout << "Enter the second integer: "; // number2
    std::cin >> number2; // number2
    
    std::cout << "Enter the third integer: ";
    std::cin >> number3;
    
    std::cout << "Enter the fourth integer: ";
    std::cin >> number4;
    
    std::cout << "Enter your fifth integer: ";
    std::cin >> number5;
    
    sum = number1 + number2 + number3 * number4 / number5; // adds up the numbers; stores the sum
    
    std::cout << "Sum is " << sum << std::endl; // display sum endline
    
    system ("pause"); // Freezes the program, preventing it from shutting down
    return 0; //Indicate that the program ended successfully
    } //Closing brace ending function main

    Og så står i build

    1>c:\users\supersindre\documents\visual studio 2008\projects\integer program\integer program\integer.cpp(3) : fatal error C1083: Cannot open include file: 'Integer.h': No such file or directory

     

    Takker for svar på forhånd.

     

    PS: Hvis noen skal mase om at emnetittelen er lite beskrivende kom med forslag, er tom for ideer.

  6. Ja, jeg skjønner poenget ditt Geir og du har helt rett, men jeg kan ikke laste ned et godt IDE og skrive inn hva som helst hvis du skjønner hva jeg mener.

    Jeg må jo lære å programmere først ellers er det nytteløst.

     

    For det eneste jeg kan sålangt er jo:

     

    #include <iostream>
    
    using namespace std;
    
    int main()
    {
    cout << "Hello World\n";
    system("pause");
    return 0;
    }

×
×
  • Opprett ny...