Digital och Datorteknik EDA /2010. EDA Digital och Datorteknik
|
|
- Elsa Strömberg
- för 5 år sedan
- Visningar:
Transkript
1 EDA Digital och Datorteknik 29-21, Arbetsbok för MC12 CPU12 Reference Guide Ur innehållet: Historik Översikt, single-chip-computer DG256 Programmerarens bild (Exempel) 1 Instruktionsuppsättning ISA Instruction Set Architecture Vilka operationer kan utföras? Instruktionsgrupper Hur lagras operanderna förutom i minnet? Korttidslagring Hur nås operander i minnet? Adresseringssätt Vilka typer/storlekar av operander kan hanteras? Generella/speciella register, registerstorlek 2 1
2 Instruktionsgrupper EXEMPEL: Motorola (Freescale) MC68X/Coldfire Data movement Program (Flow) control Integer arithmetic Floating-point arithmetic Logical operations Bit manipulation System control Cache maintenance PowerPC Load/Store Program (Flow) control Integer arithmetic Floating-point arithmetic Processor control Synchronization Miscellanous Motorola (Freescale) Load/Store Data movement Program (Flow) control Integer arithmetic Logical operations Bit manipulation System control FLEX Load/Store Data movement Program (Flow) control Integer arithmetic/test Logical operations Shift/rotate Stack operations 3 Korttidslagring, Stack/Ackumulator/Register Exempel: Kodning av operationen A = B + C Stack PUSH B PUSH C ADD POP A Exempel: B55, HP3/7 Ackumulator LOAD ADD STORE Exempel: PDP8, R652 FLEX B C A Register LOAD LOAD ADD STORE Dessutom existerar mellanting av dessa. Exempel (CISC): IBM36, DEC PDP11/VAX MC68x Intel Pentium Mest namnkunnigt exempel: Intel 886 (-186/-286/-386/-486) R1,B R2,C R3,R1,R2 A,R3 Exempel (RISC): PowerPC, MIPS, SPARC 4 2
3 Register programmerarens bild Stackmaskiner: Har som regel inga synliga register Ackumulatormaskiner: Har oftast flera register men med dedikerad användning: Exempel: Ackumulator, Indexregister Registermaskiner: Generellt användbara register. Exempel: Dataregister, Adressregister, Flyttalsregister 5 EXEMPEL - Registermaskiner PowerPC Zilog Z8 Motorola (Freescale) MC68X/Coldfire 6 3
4 EXEMPEL Ackumulator Intel 8xx 88/ ACCUMULATOR B C D E H L B C 15 STACK POINTER PROGRAM COUNTER INCREMENTER/DECREMENTER 15 AH BH CH DH A X B X C X D X SP BP SI DI IP AL BL CL DL ACCUMULATOR BASE ACCUMULATOR ACCUMULATOR STACK POINTER BASE POINTER SOURCE INDEX DESTINATION INDEX INSTRUCTION POINTER AH A X AL BH CH DH B X C X D X SI DI BP SP IP BL CL DL EAX EBX ECX EDX ESI EDI EBP ESP EIP FLAGS H FLAGS L STATUS FLAGS FLAGS EFLAGS 15 CS DS SS ES CODE SEGMENT DATA SEGMENT STACK SEGMENT EXTRA SEGMENT 15 CS SS DS ES FS CODE STACK DATA GS 7 EXEMPEL - Ackumulator IX 7 ACCA 7 ACCB PC 15 5 H Motorola 68 SP I N Z V C ACCUMULATOR A ACCUMULATOR B INDEX REGISTER PROGRAM COUNTER STACK POINTER CONDITION CODES REGISTER 7 A PCH Y PCL Rockwell X S ACCUMULATOR A INDEX REGISTER Y INDEX REGISTER X PROGRAM COUNTER STACK POINTER N V 1 B D I Z C PROCESSOR STATUS REG P 15 A Motorola 68HC D 15 X SP 15 7 Y PC S X H B I N Z V C 7 A 7 B 7 X 7 PC 7 SP 3 8-BIT ACCUMULATORS A AND B OR 16-BIT DOUBLE ACCUMULATOR D INDEX REGISTER X INDEX REGISTER Y STACK POINTER PROGRAM COUNTER CONDITION CODES REGISTER FLEX ACCUMULATOR A ACCUMULATOR B INDEX REGISTER PROGRAM COUNTER STACK POINTER N Z V C CONDITION CODES REGISTER 8 4
5 Programmerarens bild datatyper/storlek char (8) short int (16) long int (32) long int (64) floating point (IEEE) pointers Coldfire V1 X X X 32 bit PowerPC X X X X X 886 X X 16/2 bit 8386 X X X 32 bit 68HC12 X X 16/2 bit FLEX X 8 bit 9 Historik 68HC12SX 68HC12 68HC12S HC
6 Freescale 68HCS12 HCS12 adressrum, IO och minne CPU12, klockor och räknare Random Access - Minne RWM, FLASH, EEPROM Periferienheter Parallell Input/Output: Seriell kommunikation AD PWM 11 HCS12DG256, blockdiagram 12 6
7 HCS12DG256, core 13 HCS12DG256, core Spänningsregulatorer (flera olika spänningar används internt) Background Debug Mode för test/avlusning En kristall utgör bas för alla klockfrekvenser i systemet Realtidsklocka och andra klockfunktioner Programmerbara funktioner Vi återkommer till detta i Maskinorienterad Programmering 14 7
8 Primärminne Icke flyktigt minne Upp till 256 Kbyte i minnesbankar 48 kb utan användning av bankar 4 kb EEPROM Flyktigt minne 12 kb RAM 15 EXEMPEL, linjärt adressrum FFFF FLASH 4 3FFF 1 FFF 4 3FF RWM ( RAM ) Synlig del av EEPROM MCHCS12 Interna register 16 8
9 EXEMPEL, bankat adressrum FFFF FLASH C BFFF A 3B 3C 3D Bankat FLASH Dx FFF FLASH 4 3FFF 1 FFF 4 3FF RWM ( RAM ) Synlig del EEPROM MCHCS12 Interna register 17 EXEMPEL, i laborationsdator MC12 FFFF C BFFF FLASH (monitor/debugger) A 3B 3C 3D Bankat FLASH Dx FFF 4 3C8 1 FFF 4 3FF FLASH (monitor/debugger) RWM ( RAM ) Externt IO-gränssnitt MCHCS12 Interna register Minne tillgängligt för användarprogram 18 9
10 Periferikretsar i HCS12DG256 AD Analog till Digital omvandling ECT- Räknarkretsar för noggrann tidmätning SCI Asynkron seriekommunikation Parallell In-Utmatning PWM Pulsbreddsmodulering Etc 19 HCS12DG256, core Centralenhet CPU12 2 1
11 Registeruppsättning CPU A B D 15 X 15 Y 15 SP 15 PC 7 S X H I N Z V C 8-BIT ACCUMULATORS A AND B OR 16-BIT DOUBLE ACCUMULATOR D INDEX REGISTER X INDEX REGISTER Y STACK POINTER PROGRAM COUNTER CONDITION CODES REGISTER 21 Adresseringssätt Vi känner igen de flesta adresseringssätten i från FLEX. Indexerade adresseringssätt kan även användas med register X,Y och SP ibland också med PC (PC-relativt) Nytt här är också Indirekt adressering 22 11
12 Inherent Maskinkod för instruktionen Cykel för cykel beskrivning Flaggpåverkan 23 Omedelbar (Immediate) 8-bit/16-bit opr8i, 8-bitars konstant om 8-bitars register Opr16i, 16-bitars konstant om 16-bitars register 24 12
13 Direkt (Direct Page) Absolut (Extented) opr16a, kan adressera hela adressintervallet -FFFF opr8a, kan enbart adressera intervallet -FF, anger minst signifikant byte av adressen 25 PC-relativ ( BRANCH -instruktioner) 8-bitars offset ( ) 9-bitars offset ( ) 16-bitars offset ( ) 26 13
14 Indexerade adresseringssätt: Register relativ, konstant offset Basregister kan vara något av: X,Y,SP,PC EXEMPEL: LDAA 5,X STAA 2,Y LDAA sym,pc Observera, ingen syntaktisk skillnad. STA off,sp Assemblator väljer effektivast kodning Specialfall: n,pcr LDAA sym,pcr Antag PC pekar på nästa instruktion. Operanden är här PC-sym, jfr offsetberäkning för BRA -instruktioner 27 Indexerade adresseringssätt: Auto pre- increment/decrement Auto post- increment/decrement Basregister kan vara något av: X,Y,SP EXEMPEL: LDAA 1,-X STAA 4,Y- STAB 8,+SP LDAB 7,SP
15 Indexerade adresseringssätt: Register relativ, offset i ackumulator Basregister kan vara något av: X,Y,SP,PC EXEMPEL: LDAA A,X STAA B,Y STAB D,SP LDAB D,PC 29 Indexerade adresseringssätt: Indirekt EXEMPEL: LDAA STAA STAB LDAB [D,X] [sym,pcr] [2,SP] [D,Y] 3 15
16 Instruktionsgrupper LOAD-instruktioner LDAA Load A (M) A LDAB Load B (M) B LDD Load D (M:M+1) 1 A:B LDS Load SP (M:M+1) 1 SP H :SP L LDX Load index register X (M:M+1) 1 X H :X L LDY Load index register Y (M:M+1) 1 Y H :Y L LEAS Load effective address into SP Effective address SP LEAX Load effective address into X Effective address X LEAY Load effective address into Y Effective address Y STORE-instruktioner STAA Store A (A) M STAB Store B (B) M STD Store D (A) M, (B) M+1 STS Store SP SP H :SP L M:M+1 STX Store X X H :X L M:M+1 STY Store Y Y H :Y L M:M+1 MOVE-instruktioner MOVB Move byte (8 bitar) (M 1 ) M 2 MOVW Move word (8 bitar) (M:M+1) 1 M:M Instruktioner för kopiering av registerinnehåll TAB Transfer A to B (A) B anm: Ekv. Med TFR A,B TAP Transfer A to CCR (A) CCR anm: Ekv. Med TFR A,CCR TBA Transfer B to A (B) A TFR Transfer register to register (A,B,CCR,D,X,Y eller SP) (A,B,CCR,D,X,Y eller SP) TPA Transfer CCR to A (CCR) A anm: Ekv. Med TFR CCR,A TSX Transfer SP to X (SP) X anm: Ekv. Med TFR SP,X TSY Transfer SP to Y (SP) Y anm: Ekv. Med TFR SP,Y TXS Transfer X to SP (X) SP anm: Ekv. Med TFR X,SP TYS Transfer Y to SP anm: Ekv. Med TFR Y,SP (Y) SP Instruktioner för växling av registerinnehåll EXG Exchange register to register (A,B,CCR,D,X,Y eller SP) (A,B,CCR,D,X,Y eller SP) XGDX Exchange D with X (D) (X) anm: Ekv. Med EXG D,X - EXG X,D XGDY Exchange D with Y anm: Ekv. Med EXG D,Y - EXG Y,D (D) (Y) Instruktion för teckenutvidgning SEX Teckenutvidga 8 bitars operand (A,B,CCR) (D,X,Y eller SP) Använd denna Övriga finns här av kompatibilitetsskäl Använd denna Övriga finns här av kompatibilitetsskäl 32 16
17 Ovillkorlig programflödeskontroll BSR Anrop av subrutin. SP-2 SP PC-relativ operand RetAdrL:RetAdrH M (SP) :M (SP+1) Adress PC BRA Hopp till adress. Adress PC PC-relativ operand CALL Anrop av subrutin SP-2 SP Absolut operand (2 bitar) Anm: Användes vid RetAdrL:RetAdrH M (SP) :M (SP+1) programflödesändring mellan Subrutinadress PC olika minnesbankar ($8- SP-1 SP $BFFF) (PPAGE) M (SP) PAGE PPAGE Subrutinadress PC JMP Hopp till address. Absolut operand Subrutinadress PC JSR RTC RTS Anrop av subrutin Absolut operand Återvänd från subrutin. Returadress från STACK och PPAGE Återvänd från subrutin. Returadress från STACK SP-2 SP RetAdrL:RetAdrH M (SP) :M (SP+1) Subrutinadress PC M (SP) (PPAGE) SP+1 SP M (SP) :M (SP+1) PC H :PC L SP+2 SP M (SP) :M (SP+1) PC H :PC L SP+2 SP 33 EXEMPEL - Modularisering ORG $1 main: JSR init main_loop:jsr read JSR --- BRA main_loop init: --- RTS read: --- RTS 34 17
18 Instruktioner för addition ABA Addera B till A (A)+(B) A ABX Addera B till X (X)+(B) X anm: Ekv. med LEAX B,X ABY Addera B till Y (Y)+(B) Y anm: Ekv. med LEAY B,Y ADCA Addition med carry till A (A)+(M)+C A ADCB Addition med carry till B (B)+(M)+C B ADDA Addition till A (A)+(M) A ADDB Addition till B (B)+(M) B ADDD Addition till D (A:B) (D)+(M:M+1) D INC Incrementera i minnet (M)+$1 M INCA Inkrementera A (A)+ $1 A INCB Inkrementera B (B)+ $1 B INS Inkrementera SP (SP)+ $1 SP anm: Ekv. med LEAS 1,SP INX Inkrementera X (X)+ $1 X anm: Ekv. med LEAX 1,X INY Inkrementera Y anm: Ekv. med LEAY 1,Y (Y)+ $1 Y Instruktioner för subtraktion SBA Subtrahera B från A (A)-(B) A SBCA Subtrahera med borrow från A (A)-(M)-C A SBCB Subtrahera med borrow från B (B)-(M)-C B SUBA Subtrahera från A (A)-(M) A SUBB Subtrahera från B (B)-(M) B SUBD Subtrahera från D (A:B) (D)-(M:M+1) D DEC Dekrementera i minnet (M)-$1 M DECA Dekrementera A (A)- $1 A DECB Dekrementera B (B)- $1 B DES Dekrementera SP (SP)- $1 SP anm: Ekv. med LEAS -1,SP DEX Dekrementera X (X)- $1 X anm: Ekv. med LEAX -1,X DEY Dekrementera Y anm: Ekv. med LEAY -1,Y (Y)- $1 Y 35 Instruktioner för logiska operationer ANDA Bitvis och A med minnesinnehåll (A) (M) A ANDB Bitvis och A med minnesinnehåll (B) (M) B ANDCC Bitvis och CC med minnesinnehåll (CCR) (M) CCR EORA Bitvis exklusivt eller A med (A) (M) A minnesinnehåll EORB Bitvis exklusivt eller B med (B) (M) B minnesinnehåll ORAA Bitvis eller A med minnesinnehåll (A)+(M) A ORAB Bitvis eller B med minnesinnehåll (B)+(M) B ORCC Bitvis eller CCR med minnesinnehåll (CCR)+(M) CCR Unära operationer CLC Nollställ carryflaggan i CCR C CLI Nollställ avbrottsmask i CCR I CLR Nollställ minnesinnehåll $ M CLRA Nollställ A $ A CLRB Nollställ B $ B CLV Nollställ overflowflaggan I CCR V COM Ettkomplementera minnesinnehåll $FF-(M) M COMA Ettkomplementera A $FF-(A) A COMB Ettkomplementera B $FF-(B) A NEG Tvåkomplementera minnesinnehåll $-(M) M NEGA Tvåkomplementera A $-(A) A NEGB Tvåkomplementera B $-(B) B EXEMPEL: Nollställ bit 7-bit 4 på adress $3 LDAB $3 ANDB #%1111 STAB $3 EXEMPEL: Ettställ bit 7 och bit på adress $3 LDAB $3 ORAB #%11 STAB $3 EXEMPEL: Invertera bit 2 och bit1 på adress $3 LDAB $3 EORB #%11 STAB $
19 Logiska skiftoperationer LSL Logiskt vänsterskift i minnet LSLA Logiskt vänsterskift A C b7 LSLB Logiskt vänsterskift B LSLD Logiskt vänsterskift D b C b7 A b b7 B b LSR LSRA LSRB Logiskt högerskift i minnet Logiskt högerskift A Logiskt högerskift B b7 b C LSRD Logiskt högerskift D b7 A b b7 B b C Exempel på användning: Multiplikation med 2, tal utan tecken. Division med 2, tal utan tecken. 37 Aritmetiska skiftoperationer ASL Aritmetiskt vänsterskift i minnet (ekv. med LSL) ASLA Aritmetiskt vänsterskift A C b7 (ekv. med LSLA) ASLB Aritmetiskt vänsterskift B (ekv. med LSLB) ASLD Aritmetiskt vänsterskift D (ekv. med LSLD) b C b7 A b b7 B b ASR ASRA ASRB Aritmetiskt högerskift i minnet Aritmetiskt högerskift A Aritmetiskt högerskift B b7 b C Exempel på användning, högerskift: Division med 2, tal med tecken
20 Instruktioner för rotation (carry-skift) ROL Rotation vänster via carry i minnet ROLA Rotation vänster via carry A ROLB Rotation vänster via carry B C b 7 ROR Rotation höger via carry i minnet RORA Rotation höger via carry A RORB Rotation höger via carry B b 7 b b C EXEMPEL: Skifta ett 32-bitars tal på adress $3, 1 steg åt höger LSR $3 ROR $31 ROR $32 ROR $33 Exempel på användning: Skiftoperationer på tal större än 8 bitar. 39 Instruktioner för jämförelser och test CBA Jämför B med A (A)-(B) CMPA Jämför A med minne (A)-(M) CMPB Jämför B med minne (B)-(M) CPD Jämför D med minne (A:B)-(M:M+1) CPS Jämför SP med minne (SP)-(M:M+1) CPX Jämför X med minne (X)-(M:M+1) CPY Jämför Y med minne (Y)-(M:M+1) TST Testa minnesinnehåll (M)-$ TSTA Testa register A (A)-$ TSTB Testa register B (B)-$ 4 2
21 Villkorlig programflödeskontroll Mnemonic Funktion Villkor Enkla flaggtest BCS Hopp om carry C=1 BCC Hopp om ICKE carry C= BEQ Hopp om zero Z=1 BNE Hopp om ICKE zero Z= BMI Hopp om negative N=1 BPL Hopp om ICKE negative N= BVS Hopp om overflow V=1 BVC Hopp om ICKE overflow V= Test av tal utan tecken BHI Villkor: R>M C + Z = BHS Villkor: R M C= BLO Villkor: R<M C=1 BLS Villkor: R M C + Z = 1 Test av tal med tecken BGT Villkor: R>M Z + ( N V ) = BGE Villkor: R M N V = BLT Villkor: R<M N V = 1 BLE Villkor: R M Z + ( N V ) = 1 41 Instruktioner för räknande programslingor Mnemonic Funktion Villkor DBEQ Dekrementera innehåll i register. (register) 1 register Hoppa om resultatet =. (register: A,B,D,X,Y,SP) om(register)=; hoppa ; annars: nästa instruktion DBNE Dekrementera innehåll i register. (register) 1 register Hoppa om resultatet. om(register) ; hoppa ; (register: A,B,D,X,Y,SP) annars: nästa instruktion IBEQ Inkrementera innehåll i register. (register) + 1 register Hoppa om resultatet =. (register: A,B,D,X,Y,SP) om(register)=; hoppa ; annars: nästa instruktion IBNE Inkrementera innehåll i register. (register) + 1 register Hoppa om resultatet. om(register) ; hoppa ; (register: A,B,D,X,Y,SP) annars: nästa instruktion TBEQ Testa innehåll i register. Hoppa om resultatet =. (register: A,B,D,X,Y,SP) om(register)=; hoppa ; annars: nästa instruktion TBNE Testa innehåll i register. Hoppa om resultatet. (register: A,B,D,X,Y,SP) om(register) ; hoppa ; annars: nästa instruktion 42 21
22 If Kontrollstrukturer If( Villkor ) then if( Villkor ) then else end Then End Villkor JA Satser if(villkor) { Satser; } NEJ If Then Else End Villkor JA Satser 1 Satser 2 NEJ if(villkor) { Satser1; }else{ Satser2; } while( Villkor ) loop While Then End Villkor JA Satser NEJ while(villkor) { Satser; } loop until( Villkor ) LOOP UNTIL NEJ Satser Sista? JA do{ Satser; } while(villkor); 43 If () {} If Then End Villkor JA Satser NEJ if (DipSwitch!= ) HexDisp = Dipswitch; Rättfram kodning DipSwitch EQU $6 HexDisp EQU $4 TST BNE BRA DipSwitch assign end assign LDAB DipSwitch STAB HexDisp end: BNE Hopp om ICKE zero Z= BEQ Hopp om zero Z=
23 If () {} If NEJ Villkor JA Then Satser End Bättre kodning DipSwitch EQU $6 HexDisp EQU $4 TST BEQ DipSwitch end if (DipSwitch!= ) HexDisp = Dipswitch; end: LDAB STAB DipSwitch HexDisp BNE Hopp om ICKE zero Z= BEQ Hopp om zero Z=1 45 If () {} else { } If Then Else End Villkor JA Satser 1 Satser 2 NEJ if (DipSwitch == ) HexDisp = 1; else HexDisp = ; DipSwitch EQU $6 HexDisp EQU $4 LDAB DipSwitch TSTB BEQ not_else LDAB # STAB HexDisp BRA end not_else: LDAB #1 STAB HexDisp end: BEQ Hopp om zero Z=
24 If () {} else { } DipSwitch EQU $6 HexDisp EQU $4 If Then Else End Villkor JA Satser 1 Satser 2 NEJ if (DipSwitch == ) HexDisp = 1; else HexDisp = ; LDAB DipSwitch TSTB BNE else LDAB #1 STAB HexDisp BRA end else: LDAB # STAB HexDisp end: BNE Hopp om ICKE zero Z= 47 If () {} else { } If Then Else End Villkor JA Satser 1 Satser 2 NEJ if (DipSwitch >= 5) HexDisp = 1; else HexDisp = ; DipSwitch EQU $6 HexDisp EQU $4 LDAB DipSwitch CMPB #5 BHS then LDAB # STAB HexDisp BRA end then: LDAB #1 STAB HexDisp end: Test av tal utan tecken BHS Villkor: R M C= Test av tal med tecken BGE Villkor: R M N V = 48 24
25 while () {} While Then End Villkor JA Satser 1 NEJ while (DipSwitch!= ) HexDisp = 1; HexDisp = ; DipSwitch EQU $6 HexDisp EQU $4 while: end_while: LDAB DipSwitch TSTB BEQ end_while LDAB #1 STAB HexDisp BRA while LDAB # STAB HexDisp BEQ Hopp om zero Z=1 49 while () {} While Then End Villkor JA Satser 1 NEJ Delay( unsigned int count ) { while (count > ) count = count - 1; } Delay: LDD count Delay_loop: NOP NOP Delay_end: SUBD #1 BHI Delay_loop RTS Test av tal utan tecken BHI Villkor: R>M C + Z = Test av tal med tecken BGT Villkor: R>M Z + ( N V ) = 5 25
26 Fördröjning Delay( unsigned int count ) { while (count > ) count = count - 1; } Parameter count finns i register D vid anrop. Anm. count= är EJ TILLÅTET. ; Subrutin 'Delay' Delay: NOP Delay_loop: NOP NOP SUBD #1 BHI Delay_loop RTS instruktion NOP 1 NOP NOP SUBD #1 BHI antal ggr. count count count count ( taken ) BHI 1 (not taken) RTS 1 = NOP ( count) + SUBD#1 ( count ) + BHI T ( count-1 ) + BHI NT ( 1 ) + RTS ( 1 ) =? 51 = NOP ( count) + SUBD#1 ( count ) + BHI T ( count ) + BHI NT ( 1 ) + RTS ( 1 ) =? (exekveringstider, dvs antal cykler, fås ur handboken) instruktion NOP 1 SUBD #1 2 BHI 3/1 RTS 5 # cykler = 1 ( count) + 2 ( count ) + 3 ( count-1 ) + 1 ( 1 ) + 5 ( 1 ) = 7 count
27 Minimal/maximal fördröjning vid olika klockfrekvenser MC12 Frekvens/ cykeltid 4 MHz/ 25 ns. 8 MHz/ 125 ns. 16 MHz/ 62,5 ns. 25 MHz/ 4 ns. Min. ( count = 1) 11 cykler Max. ( count = $FFFF) cykler 2,75 s 115 ms 1,375 s 57,34 ms 687,5 ns 28,67 ms 44 ns 18,35 ms 53 Exempel: Bestäm count för 1 ms fördröjning i ett MC12-system Lösning: MC12 Frekvens/ cykeltid 8 MHz/ 125 ns. Min. ( count = 1) 11 cykler Max. ( count = $FFFF) cykler 1,375 s 57,34 ms (7count (7count count 4)125ns 4)125ns Uppskatta motsvarande fördröjning i simulatorn 1ms 1 ns Tar c:a 14 sekunder 54 27
28 Om längre fördröjningar krävs måste Delay -funktionen utföra fler instruktioner i varje slinga, exempelvis genom anrop av följande rutin: ; ; subrutin ADelay' ADelay: BSR ADelay1 ADelay1: BSR ADelay2 ADelay2: RTS Hur många bytes kod motsvarar rutinen? Hur många klockcyklers fördröjning ger den? 55 do {} while () LOOP UNTIL NEJ Satser Sista? JA do { HexDisp = ; }while (DipSwitch >= 1); DipSwitch EQU $6 HexDisp EQU $4 do: MOVB #,HexDisp LDAB DipSwitch CMPB #1 BHS do Test av tal utan tecken BHS Villkor: R M C= 56 28
29 EXEMPEL memcopy( from, to, size ) Kan (informellt) kodas memcopy: LDAB size LDX from LDY to memcopy_loop: memcopy_end: TSTB BEQ LDAA STAA DECB BRA RTS memcopy_end 1,X+ 1,Y+ memcopy_loop 57 EXEMPEL memcopy1( from, to, size ) Kan (informellt) kodas memcopy1: LDAB size LDX from LDY to memcopy1_loop: memcopy1_end: TSTB BEQ MOVB DECB BRA RTS memcopy1_end 1,X+,1,Y+ memcopy1_loop 58 29
30 EXEMPEL memcopy2( from, to, size ) Kan (informellt) kodas memcopy2: LDAB size LDX from LDY to memcopy2_loop: SUBB #1 BMI memcopy2_end MOVB B,X,B,Y BRA memcopy2_loop memcopy2_end: RTS 59 EXEMPEL memcopy3( from, to, size ) Kan (informellt) kodas memcopy3: LDAB size LDX from LDY to memcopy3_loop: MOVB 1,X+,1,Y+ DBNE B,memcopy3_loop memcopy3_end: RTS vad händer om size är, vid anrop??? 6 3
31 EXEMPEL memcopy( from, to, size ) En effektiv implementering. memcopy: LDAB size BEQ memcopy_end LDX from LDY to memcopy_loop: MOVB 1,X+,1,Y+ DBNE B,memcopy_loop memcopy_end: RTS 61 31
MC68HCS12 - översikt
MC68HCS12 - översikt MC68HC12, Arbetsbok för MC12 CPU12 Reference Guide Ur innehållet: Programmerarens bild Översikt, single-chip-computer DG256 MC68HCS12 översikt/roj 1 Instruktionsuppsättning ISA Instruction
Läs merDAT 015 Maskinorienterad Programmering 2010/11. Ur innehållet: Historik Översikt, single-chip-computer DG256 Programmerarens bild (Exempel)
DAT 15 Maskinorienterad Programmering 21/11 MC68HC12, Arbetsbok för MC12 CPU12 Reference Guide Ur innehållet: Historik Översikt, single-chip-computer DG256 Programmerarens bild (Exempel) Introduktion till
Läs merInstruktionsuppsättning. Programmerarens bild adresserbart minne. Programmerarens bild datatyper/storlek. Maskinorienterad Programmering 2011/2012
Maskinorienterad Programmering 211/212 Instruktionsuppsättning IS Instruction Set rchitecture M68H12, rbetsbok för M12 PU12 Reference Guide Ur innehållet: Programmerarens bild Översikt, single-chip-computer
Läs merMaskinorienterad Programmering 2010/11
Maskinorienterad Programmering 2010/11 Maskinnära programmering en introduktion Ur innehållet: Assemblatorn, assemblerspråk Datatyper Tilldelningar, l i unära och binära operationer Permanenta/tillfälliga
Läs merAssemblerprogrammets struktur; exempel
Maskinorienterad Programmering 2010/11 Maskinnära programmering en introduktion Ur innehållet: Assemblatorn, assemblerspråk Datatyper Tilldelningar, l i unära och binära operationer Permanenta/tillfälliga
Läs merDigital och Datorteknik EDA /2010. EDA Digital och Datorteknik
EDA 45 - Digital och Datorteknik Dagens föreläsning: Assemblerprogrammering för FLEX, Extra material Ext 8 Ur innehållet: Programmerarens bild av FLEX Instruktionsuppsättning Register åtkomliga för programmeraren
Läs merEDA Digital och Datorteknik
Digital och Datorteknik EDA45 200/20 EDA 45 - Digital och Datorteknik Dagens föreläsning:, Extra material Ext 8 Ur innehållet: Programmerarens bild av FLEX Instruktionsuppsättning Register åtkomliga för
Läs merFLEX Instruktionslista
FLEX Instruktionslista Innehåll 1 Förklaring av beteckningar i instruktionslistan... 2 2 Detaljerad beskrivning av FLEX-processorns instruktioner... 3 3 Operationskoder, maskincykler och flaggpåverkan...
Läs merReducerad INSTRUKTIONSLISTA för FLIS-processorn
Reducerad INSTRUKTIONSLI för FLIS-processorn 2013-11-08 2(10) Innehåll Sidan 3 Programmerarens bild av FLIS-processorn 4 Förklaring av beteckningar i instruktionslistan 5 Enkel dataflyttning 5 Logik 5
Läs merNya instruktioner. b 7
LV6 Fo6 Aktivera Kursens mål: Konstruera en dator mha grindar och programmera denna tudera en kommersiell processor - U2/H2/M2 Aktivera Förra veckans mål: IN- och Utmatning (I/O); kriva program (för FLEX)
Läs merInstruktionsuppsättning
DT Maskinorienterad Programmering 21/11 M68H12, rbetsbok för M12 PU12 Reference Guide Ur innehållet: Historik Översikt, single-chip-computer DG256 Programmerarens bild (Exempel) Instruktionsuppsättning
Läs merProgramexempel för FLEX
Aktivera Kursens mål: Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Konstruera styrenheten. genom att. implementera olika maskininstruktioner i styrenheten. Kunna använda
Läs merNya instruktioner. b 7
LV6 Fo6 Aktivera Kursens mål: Konstruera en dator mha grindar och programmera denna tudera en kommersiell processor - PU2/H2/M2 Aktivera Förra veckans mål: IN- och Utmatning (I/O); kriva program (för FLEX)
Läs merVillkorliga hopp: 9/26/2011. Dagens mål: Du ska kunna.. Villrorliga (Relativa) hopp - forts Arb s 140. LV5 Fo12. LV5 Fo12. Aktivera Kursens mål:
Aktivera Kursens mål: Konstruera en dator mha grindar och programmera denna Använda en modern microcontroller Aktivera Förra veckans mål: Konstruera styrenheten. genom att. implementera olika maskininstruktioner
Läs merDigital- och datorteknik
Digital- och datorteknik Föreläsning #15 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Dataväg med pekarregister och stackpekare: I vår sjunde,
Läs merKonstruera en dator mha grindar och programmera denna Använda en modern microcontroller
Aktivera Kursens mål: LV5 Fo12 Konstruera en dator mha grindar och programmera denna Använda en modern microcontroller Aktivera Förra veckans mål: Konstruera styrenheten. genom att. implementera olika
Läs merAssemblerprogrammets. struktur; exempel
Assemblerprogrammering för HCS12 Absolut assemblering Ur innehållet: Assemblatorn, assemblerspråk Ordlängder och datatyper Tilldelningar, binära operationer Registerspill, permanenta och tillfälliga variabler
Läs merAssemblerprogrammering för HCS12
Assemblerprogrammering för HCS12 Ur innehållet: Assemblatorn, assemblerspråk Ordlängder och datatyper Tilldelningar, binära operationer Registerspill, permanenta och tillfälliga variabler Programkonstruktioner
Läs merDigital- och datorteknik
Digital- och datorteknik Föreläsning #15 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Dataväg med pekarregister och stackpekare: I vår sjunde,
Läs merINSTRUKTIONSLISTA för FLEX-processorn
INSTRUKTIONSLISTA för FLEX-processorn Detta häfte får användas vid tentamen i Digital- och datorteknik. Anteckna ej i häftet, under/ överstrykning är tillåtet. 2008-10-10 Innehåll Sidan Programmerarens
Läs merBilda styrsignalerna till datavägen RESET FETCH EXECUTE NF NF NF. Digital och Datorteknik EDA /2011. Digital och Datorteknik EDA /2011
EDA 45 - Digital och Datorteknik Dagens föreläsning:, exemplifierad med FLEX Arbetsboken kapitel 9-22 Ur innehållet: En automatisk styrenhet Grundläggande d instruktioner Adresseringssätt Konstruktion
Läs merExtrauppgifter för CPU12
1 Extrauppgifter för CPU12 X1a) Skriv en instruktionssekvens som nollställer bit 3-0 i alla minnesord i adressintervallet 2035H, 2049H Använd X-registret för adressering X1b) Skriv en subrutin som maskerar
Läs merTentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2017-10-26 Lokal TER1, TER3 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor (inklusive
Läs merExt-13 (Ver ) Exempel på RTN-beskrivning av FLEX-instruktioner
Ext-3 (Ver 203-04-2) Exempel på RTN-beskrivning av FLEX-instruktioner. Figur på sidan 2 i detta häfte visar hur datorn FLEX är uppbyggd. På sidan visas dessutom hur ALU:ns funktion väljs med styrsignalerna
Läs merTentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2015-08-18 Lokal TERE, TER4 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 7 Antal sidor (inklusive
Läs merFLEXIBLE INSTRUCTION SET PROCESSOR FLISP
2014-08-19 FLEXIBLE INSTRUCTION SET PROCESSOR FLISP FLISP - HANDBOK Detta häfte utgör den sammanfattande beskrivningen av FLISprocessorn. Häftet är indelat i två delar. Del 1 behandlar assemblerprogrammerarens
Läs mer4.1. Assemblerspråket
Kursmaterial: Maskinnära programmering ur DATORSYSTEMTEKNIK FÖR HÖGSKOLANS INGENJÖRSUTBILDNINGAR UTKAST: 2010-10-19 16:57:00 4 MASKINNÄRA PROGRAMMERING Kapitlets syfte är att illustrera såväl möjligheter
Läs merF4: Assemblerprogrammering
F4: Assemblerprogrammering Hoppinstruktioner Branch Jump Med vilkor IF satser Loopar while-loopar do-while- loopar for-loopar Stackhantering Underprogram 1 BRA rel_adr Branch Always Relativadressering
Läs merFLEXIBLE INSTRUCTION SET PROCESSOR FLISP
2013-08-14 FLEXIBLE INSTRUCTION SET PROCESSOR FLISP Detta häfte utgör den sammanfattande beskrivningen av FLISprocessorn. Häftet är indelat i två delar. Del 1 behandlar assemblerprogrammerarens bild av
Läs mer9/22/2012. Assemblernivå Beskrivning av funktion Automatiskt styrd borrmaskin Positionera borr Starta borr Borra genom arbetsstycke...
LV4 Fo10 Aktivera Kursens mål: Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Koppla samman register och ALU till en dataväg Minnets uppbyggnad och anslutning till datavägen
Läs merExt-13 (Ver ) Exempel på RTN-beskrivning av FLEX-instruktioner
Ext-3 (Ver 204-04-08) Exempel på RTN-beskrivning av FLEX-instruktioner. Figur på sidan 2 i detta häfte visar hur datorn FLEX är uppbyggd. På sidan visas dessutom hur ALU:ns funktion väljs med styrsignalerna
Läs merF2: Motorola Arkitektur. Assembler vs. Maskinkod Exekvering av instruktioner i Instruktionsformat MOVE instruktionen
68000 Arkitektur F2: Motorola 68000 I/O signaler Processor arkitektur Programmeringsmodell Assembler vs. Maskinkod Exekvering av instruktioner i 68000 Instruktionsformat MOVE instruktionen Adresseringsmoder
Läs merTentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2015-06-01 Lokal Tid 14-18 Kurskod Provkod Kursnamn Provnamn Institution Antal frågor 6 Antal sidor (inklusive denna sida) 6 Kursansvarig Lärare som besöker skrivsalen
Läs merTentamen (Exempel) Datorteknik Y, TSEA28
Tentamen (Exempel) Datorteknik Y, TSEA28 Datum 2018-05-29 Lokal KÅRA,T1,T2, Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal
Läs merTentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2017-08-15 Lokal TER4 Tid 14-18 Kurskod Provkod Kursnamn Provnamn Institution Antal frågor 6 Antal sidor (inklusive denna sida) 6 Kursansvarig Lärare som besöker skrivsalen
Läs merTentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2016-10-18 Lokal TER1 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 7 Antal sidor (inklusive
Läs merTentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2016-08-16 Lokal TER2, TER4 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor (inklusive
Läs merStyrenheten 9/17/2011. Styrenheten - forts Arb s 120. LV4 Fo10. Aktivera Kursens mål: Kap 7 Blå
Aktivera Kursens mål: LV4 Fo10 Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Koppla samman register och ALU till en dataväg Minnets uppbyggnad och anslutning till datavägen
Läs merDigital- och datorteknik
Digital- och datorteknik Föreläsning #16 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Behovet av ändring av programflödet För att kunna skriva
Läs merProgrammering av inbyggda system 2012/2013. Kodningskonventioner och programbibliotek. maskinnära programmering i C och assemblerspråk
2012/2013 Kodningskonventioner och programbibliotek Ur innehållet: Kodningskonventioner maskinnära programmering i C och assemblerspråk Programbibliotek 32-bitars operationer med 16 bitars processor Kodningskonventioner
Läs merTentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2016-05-31 Lokal Kåra, T1, T2, U1, U15 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal
Läs merTentamen (Exempel) Datorteknik Y, TSEA28
Tentamen (Exempel) Datorteknik Y, TSEA28 Datum 2018-10-31 Lokal TER4 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 7 Antal sidor (inklusive
Läs merDigital- och datorteknik
Digital- och datorteknik Föreläsning #16 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Behovet av ändring av programflödet För att kunna skriva
Läs merAssemblerprogrammering för ARM del 2
Assemblerprogrammering för ARM del 2 Ur innehållet Programflöde Subrutiner, parametrar och returvärden Tillfälliga (lokala) variabler Läsanvisningar: Arbetsbok kap 2 Quick-guide, instruktionslistan Assemblerprogrammering
Läs merEDA215 Digital- och datorteknik för Z
EDA25 Digital- och datorteknik för Z Tentamen Måndag 7 december 2007, kl. 08.30-2.30 i M-salar Examinatorer Rolf Snedsböl, tel. 772 665 Kontaktpersoner under tentamen Som ovan. Tillåtna hjälpmedel Häftet
Läs merTentamen (Exempel) Datorteknik Y, TSEA28
Tentamen (Exempel) Datorteknik Y, TSEA28 Datum 2018-xx-xx Lokal TER1, TER3 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 7 Antal sidor
Läs merTentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2017-06-02 Lokal G35, TER2, TER4 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor
Läs merTentamen. Datorteknik Y, TSEA28
Tentamen Datorteknik Y, TSEA28 Datum 2015-10-20 Lokal TERE, TER2 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor (inklusive
Läs merTentamen (Exempel) Datorteknik Y, TSEA28
Tentamen (Exempel) Datorteknik Y, TSEA28 Datum 2018-08-21 Lokal TER4 Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Provnamn Datorteknik Y Skriftlig tentamen Institution ISY Antal frågor 6 Antal sidor
Läs merTentamen Datorteknik Y, TSEA28 Datum 2012-08-14
Tentamen Datorteknik Y, TSEA28 Datum 2012-08-14 Lokal TER2 Tid 8-12 Kurskod TSEA28 Provkod TEN1 Kursnamn Datorteknik Y Institution ISY Antal frågor 6 Antal sidor (inklusive denna sida) 7 Kursansvarig Andreas
Läs mer11/16/2012. Assemblernivå Beskrivning av funktion Automatiskt styrd borrmaskin Positionera borr Starta borr Borra genom arbetsstycke...
LV4 Fo10 Aktivera Kursens mål: Konstruera en dator mha grindar och programmera denna Aktivera Förra veckans mål: Koppla samman register och ALU till en dataväg Minnets uppbyggnad och anslutning till datavägen
Läs merStyrenheten styrsignalsekvenser programflödeskontroll
Styrenheten styrsignalsekvenser programflödeskontroll Kontroll av programflöde Instruktionerna är ordnade sekventiellt i minnet och utförs normalt i denna ordning. Vissa programkonstruktioner kräver dock
Läs merAssemblerprogrammering
2012-02-14 Assemblerprogrammering Övningsuppgifter 2011 Lösningar (Med reservation för diverse fel!) 1. Hur många E-klockperioder använder CPU12 (HCS12) för att köra programsekvensen nedan? ORG $1000 LDAA
Läs merEDA480/EDA485 - Maskinorienterad programmering, tentamen 2006-xx-xx 1(7)
EDA480/EDA485 - Maskinorienterad programmering, tentamen 2006-xx-xx 1(7) 1. Motivation ROM. 8kbyte 2 3 2 10 byte 13 Adressbitar [A12,A0] direkt till ROM-kapsel. RWM. 32kbyte 2 5 2 10 byte 15 Adressbitar
Läs mer1 Maskinnära programmering för HC12
UTKAST 6/3 2013- Maskinnära programmering för HC12 1 Maskinnära programmering för HC12 Kapitlets syfte är att illustrera såväl möjligheter som begränsningar med maskinnära programmering. Större delen behandlar
Läs merTentamen Datorteknik Y, TSEA28 Datum 2012-06-02 TER2, TER4, TERE Tid 14-18
Tentamen Datorteknik Y, TSEA28 Datum 2012-06-02 Lokal TER2, TER4, TERE Tid 14-18 Kurskod TSEA28 Provkod TEN1 Kursnamn Datorteknik Y Institution ISY Antal frågor 7 Antal sidor (inklusive denna sida) 10
Läs merMaskinorienterad Programmering - 2010/2011. Maskinorienterad Programmering 2010/11. Maskinnära programmering C och assemblerspråk
Maskinorienterad Programmering 2010/11 Maskinnära programmering C och assemblerspråk Ur innehållet: 32-bitars aritmetik med 16-bitars processor IEEE754 flyttal Maskinnära programmering - C 1 CPU12, ordlängder
Läs merAssemblerprogrammering del 2
Assemblerprogrammering del 2 FLISP och omvärlden Dagens föreläsning behandlar: Kompendiet kapitel 9 Arbetsboken kapitel 16 Ur innehållet: In- och ut-enheter Tilldelningar och uttrycksevaluering Programflödeskontroll
Läs merDBG identifierar därefter sig genom utskrift av namn och version. Se även "Disposition av adressrum" nedan. Följande kommandon accepteras av DBG
Introduktion DBG12 är en monitor/debugger för MC68HCS12-baserade mikrodatorer. DBG12 ingår i en serie likartade monitor/debugger's för mikrodatorer. För närvarande finns följande varianter: DBG11 DBG12
Läs merMaskinorienterad programmering
Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN(med svar och vissa lösningsförslag) KURSNAMN Maskinorienterad programmering PROGRAM: Dataingenjör och elektroingenjör
Läs merKodningskonventioner (XCC12) Specifikation av strncpy: Övningsexempel: Maskinorienterad Programmering 2011/2012
Maskinorienterad Programmering 2011/2012 Kodningskonventioner och programbibliotek Ur innehållet: Kodningskonventioner maskinnära programmering i C och assemblerspråk Programbibliotek 32-bitars operationer
Läs merProgrammering av inbyggda system. Kodningskonventioner. Viktor Kämpe
Kodningskonventioner Viktor Kämpe Varför kodningskonventioner? Förståelse för Skillnaden mellan lokala/globala variabler. Funktionsargument. Returvärde. Möjliggör Mix av assembler och C. Kodningskonventioner/VK
Läs merDigital- och datorteknik
Digital- och datorteknik Föreläsning #17 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Tallriksmodellen Stackoperationer Element kan endast
Läs merAssemblerprogrammering för ARM del 1
Assemblerprogrammering för ARM del 1 Ur innehållet: Ordlängder och heltalstyper i C Variabeldeklarationer Programkonstruktioner Tilldelningar Uttrycksevaluering Ovillkorliga programflöden Funktion med
Läs merExempel 1 på Tentamen med lösningar
Institutionen för data- och informationsteknik CHALMERS TEKNISKA HÖGSKOLA Exempel 1 på Tentamen med lösningar Grundläggande datorteknik Examinator Kontaktperson under tentamen Tillåtna hjälpmedel Häfte
Läs merOmtentamen i CDT204 - Datorarkitektur
Omtentamen i CDT204 - Datorarkitektur 2012-11-05 Skrivtid: 08.10-12.30 Hjälpmedel: Miniräknare och valfritt skriftligt (ej digitalt) material. Lärare: Stefan Bygde, kan nås på 070-619 52 83. Tentamen är
Läs merÖvning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler
Övning1 Datorteknik, HH vt12 - Talsystem, logik, minne, instruktioner, assembler Talsystem Talsystem - binära tal F1.1) 2 n stycken tal från 0 till 2 n 1 F1.2) 9 bitar (512 kombinationer) Talsystem - 2-
Läs merExempel 3 på Tentamen
Institutionen för data- och informationsteknik CHALMERS TEKNISKA HÖGSKOLA Exempel 3 på Tentamen Grundläggande datorteknik Examinator Kontaktperson under tentamen Tillåtna hjälpmedel Häfte Instruktionslista
Läs merDigitala System: Datorteknik ERIK LARSSON
Digitala System: Datorteknik ERIK LARSSON Dator Primärminne Instruktioner och data Data/instruktioner Kontroll Central processing unit (CPU) Fetch instruction Execute instruction Programexekvering (1)
Läs merProgram Datorteknik. Kontrollenhet. Exekvering av en instruktion. Abstraktionsnivå: Högnivåspråk. Assemblyspråk. Maskinspråk.
Program Datorteknik Abstraktionsnivå: Högnivåspråk ERIK LARSSON» t ex C, C++ Assemblyspråk» t ex ADD R, R Maskinspråk» t ex 000.0 Exekvering av en instruktion Kontrollenhet () Hämta instruktion på 0000000
Läs merDatorteknik ERIK LARSSON
Datorteknik ERIK LARSSON Program Abstraktionsnivå: Högnivåspråk» t ex C, C++ Assemblyspråk» t ex ADD R1, R2 Maskinspråk» t ex 001101.101 Exekvering av en instruktion (1) Hämta instruktion på 00001000 (där
Läs merTentamen med lösningar
Institutionen för data- och informationsteknik CHALMERS TEKNISKA HÖGSKOLA Tentamen med lösningar EDA452 Grundläggande Datorteknik, D DIT790 Digital- och datorteknik, GU Måndag xx Oktober 20xx, kl. 8.30-12.30
Läs merDataminne I/O Stack 0x005D 0x3D SP low byte 0x005E 0x3E SP high byte
CT3760 Mikrodatorteknik Föreläsning 4 Tisdag 2005-09-06 Stacken I datasammmanhang är en stack ett minnesområde. Det är processorn som använder stacken. För att skapa en stack anger man en adress i stackpekarregistret.
Läs merAssemblerprogrammering för ARM del 1
Assemblerprogrammering för ARM del 1 Ur innehållet: Assemblerspråk Ordlängder och heltalstyper i C Variabeldeklarationer Programkonstruktioner Tilldelningar Uttrycksevaluering Ovillkorliga programflöden
Läs merDataöverföring på Parallell- och serieform MOP 11/12 1
Dataöverföring på Parallell- och serieform MOP 11/12 1 Parallell dataöverföring I digitala system finns ofta behovet att flytta ett eller flera dataord från ett ställe (sändare) till ett annat ställe (mottagare).
Läs merMaskinorienterad programmering. Mekatronikingenjör åk 2/ lp 3. Lars-Eric Arebrink. Av institutionen utgiven. Lars-Eric Arebrink
Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN KURSNAMN Maskinorienterad programmering PROGRAM: Dataingenjör och elektroingenjör åk 1/ lp 3 Mekatronikingenjör åk 2/
Läs merDigital- och datorteknik. Mekatronik-, data- och elektroingenjör Åk 1/ lp 1o2. Lars-Eric Arebrink. Av institutionen utgiven. vid flera tillfällen
Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN KURSNAMN Digital- och datorteknik PROGRAM: KURSBETECKNING Mekatronik-, data- och elektroingenjör Åk / lp o2 LEU43 EXAMINATOR
Läs merDatorarkitekturer med operativsystem ERIK LARSSON
Datorarkitekturer med operativsystem ERIK LARSSON Översikt Processorn Maskininstruktioner Dator Primärminne Data/instruktioner Kontroll Central processing unit (CPU) Fetch instruction Execute instruction
Läs merGrundläggande datavetenskap, 4p
Grundläggande datavetenskap, 4p Kapitel 2 Datamanipulation, Processorns arbete Utgående från boken Computer Science av: J. Glenn Brookshear 2004-11-09 IT och Medier 1 Innehåll CPU ALU Kontrollenhet Register
Läs merArbetsbok för MC12, kapitel 4 Klocka. Genomgång av laborationer. New disc Här väljer du olika arbetsstycken
Maskinorienterad Programmering 2011/2012 Laborationsmoment 2 - En Borrautomat : Programutveckling i assembler Tangentbord för borrkommando Operatör Mikrodator Anpassningselektronik Borrmaskin Arbetsbok
Läs merProgramräknaren visar alltid på nästa instruktion som skall utföras. Så fort en instruktion har hämtats så visar programräknaren på nästa instruktion.
F5 Föreläsning i Mikrodatorteknink 2006-09-05 Programräknaren visar alltid på nästa instruktion som skall utföras. Så fort en instruktion har hämtats så visar programräknaren på nästa instruktion. Programräknaren
Läs merÖvningsuppgifter i Mikrodatorteknik 4p/5p
Övningsuppgifter i Benny Thörnberg Mittuniversitetet Inst. för Informationsteknologi och medier Hösten 2005 1 Exekvering av assemblerkod 1.1 Statusflaggors beteende Vad blir C-, N- och Z- flaggornas värden
Läs merFöreläsningsanteckningar 2. Mikroprogrammering I
Föreläsningsanteckningar 2. Mikroprogrammering I Olle Seger 2012 Anders Nilsson 2016 Innehåll 1 Inledning 2 2 En enkel dator 2 3 Komponenter 3 3.1 Register............................... 3 3.2 Universalräknare..........................
Läs merMaskinorienterad programmering
Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN KURSNAMN Maskinorienterad programmering PROGRAM: Dataingenjör och elektroingenjör åk 1/ lp 3 Mekatronikingenjör åk 2/
Läs merDigital- och datorteknik
Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN KURSNAMN Digital- och datorteknik PROGRAM: KURSBETECKNING Mekatronikingenjör (samt data- och elektroingenjör) Åk / lp
Läs merTentamen PC-teknik 5 p
Tentamen PC-teknik 5 p Namn:. Klass:... Program: Di2, Em3, Et3 Datum: 03-08-15 Tid: 13:30-18:30 Lokal: E171 Hjälpmedel: Linjal, miniräknare, Instruktionsrepertoar för 8086 (utdelas), Lathund, Pacific C
Läs merIntroduktion till ARM Cortex-M4
Introduktion till ARM Cortex-M4 Ur innehållet: Historik - ARM ARM/Thumb instruktionsuppsättning Register Adresseringssätt 1 ARM Tidiga datorer Programmering av inbyggda system 1979 Acorn Computers Acorn
Läs merLaborationsmoment 2 - En Borrautomat
Maskinorienterad Programmering 2011/2012 : Programutveckling i assembler Arbetsbok för MC12, kapitel 4 1 Laborationsmoment 2 - En Borrautomat Tangentbord för borrkommando Operatör Mikrodator Anpassningselektronik
Läs merTentamen. EDA432 Digital- och datorteknik, It DIT790 Digital- och datorteknik, GU. Onsdag 12 Januari 2011, kl
Institutionen för data- och informationsteknik CHALMERS TEKNISKA HÖGSKOLA Tentamen EDA432 Digital- och datorteknik, It DIT790 Digital- och datorteknik, GU Onsdag 12 Januari 2011, kl. 14.00-18.00 Examinatorer
Läs merNärliggande allokering Datorteknik
Närliggande allokering Datorteknik ERIK LARSSON TID Problem: Minnet blir fragmenterat Paging Demand paging Sida (S) Dela upp primärminnet i ramar (frames) och program i sidor (pages) Program 0 RD.0 1 RD.1
Läs mer7) Beskriv tre sätt att överföra parametrar mellan huvudprogram och subrutin.
1(5) Övningstentamen i Mikrodatorer och assemblerprogrammering, ELGA05 Hjälpmedel: Bifogad lista med memokoder för MC68xxx. Samtliga programmeringsuppgifter ska innehålla flödesschema med förklaringar
Läs merTentamen. EDA432 Digital- och datorteknik, IT DIT790 Digital- och datorteknik, GU. Måndag 18 Oktober 2010, kl
Institutionen för data- och informationsteknik CHALMERS TEKNISKA HÖGSKOLA Tentamen EDA432 Digital- och datorteknik, IT DIT790 Digital- och datorteknik, GU Måndag 18 Oktober 2010, kl. 8.30-12.30 Examinatorer
Läs merDigital- och datorteknik
Digital- och datorteknik Föreläsning #24 Biträdande professor Jan Jonsson Institutionen för data- och informationsteknik Chalmers tekniska högskola Allmänt Behovet av processorinstruktioner för multiplikation
Läs merAssemblerprogrammering del 3
Assemblerprogrammering del 3 Dagens föreläsning behandlar: Kompendiet kapitel 9 och 10.4 Arbetsboken kapitel 16 Ur innehållet: Modularisering, subrutiner och strukturerad programutveckling (flödesdiagram)
Läs merDatorarkitekturer med operativsystem ERIK LARSSON
Datorarkitekturer med operativsystem ERIK LARSSON Dator Primärminne Instruktioner och data Data/instruktioner Kontroll Central processing unit (CPU) Fetch instruction Execute instruction Programexekvering
Läs merTENTAMEN (med svar och vissa lösningar)
Institutionen för data- och informationsteknik Avdelningen för datorteknik TENTAMEN (med svar och vissa lösningar) KURSNAMN Maskinorienterad programmering PROGRAM: Dataingenjör och elektroingenjör åk 1/
Läs merProgrammering av inbyggda system
Programmering av inbyggda system Genomgång inför laborationer 1-3: Programutveckling i assembler Genomgång inför laborationer 1-3/RoJ 1 Laborationsmoment 2 - En Borrautomat Tangentbord för borrkommando
Läs merDatormodell. Datorns uppgifter -Utföra program (instruktioner) Göra beräkningar på data Flytta data Interagera med omvärlden
Datormodell Datorns uppgifter -Utföra program (instruktioner) Göra beräkningar på data Flytta data Interagera med omvärlden Intel 4004 från 1971 Maximum clock speed is 740 khz Separate program and data
Läs merDatorsystem 2 CPU. Förra gången: Datorns historia Denna gång: Byggstenar i en dators arkitektur. Visning av Akka (för de som är intresserade)
Datorsystem 2 CPU Förra gången: Datorns historia Denna gång: Byggstenar i en dators arkitektur CPU Visning av Akka (för de som är intresserade) En dators arkitektur På en lägre nivå kan vi ha lite olika
Läs mer