| Skriv ut | Lukk vindu |
Høst 2026
DTE-1520 Beregningsorientert programmering for datateknikk - 5 stp
Ansvarlig enhet
Emnetype
Emnet kan tas som enkeltemne.
Emnet er primært rettet mot bachelorstudenter i datateknikk og inngår ikke i studieplanen for andre studieretninger. Det forventes at deltakeren kan programmere i språk som Python eller lærer det parallelt i løpet av semesteret.
Studiepoengreduksjon
Innhold
Beregninger
- Funksjoner og formler
- Data, tabeller og grafer
- Presisjon
Datamaskinens grunnleggende konsepter
- Logikk (Setningslogiske resonnementsformer og Boolsk algebra)
- Tallsystemer (desimal, binær, heksadesimal, oktal)
- Bit-operasjoner (logisk og matematisk)
- Oppbygging av datamaskiner
- Representasjon av tall (Negative tall, flyttall, i ulike språk)
- Binære og tekstfiler, byte order
Opptakskrav
Generell studiekompetanse og Matematikk R1+R2 og Fysikk 1.
Søkere som kan dokumentere ett av følgende kvalifiserer også for opptak:
- generell studiekompetanse og bestått realfagkurs, eller
- bestått 1-årig forkurs for ingeniørutdanning, eller
- 2-årig teknisk fagskole etter rammeplan fastsatt av departementet 1998/99 og tidligere studieordninger
*For å få opptak til enkeltemner på grunnlag av Y-veien, må søkeren oppfylle opptakskriteriene for Y-vei til studieprogrammet som emnet inngår i. I tillegg må søkeren oppfylle eventuelle forkunnskapskrav som er spesifisert for det konkrete emnet de søker opptak til. Det gis begrenset studierett til det spesifikke emnet - på samme måte som realkompetansesøkere.
Søknadskode: 9391
Hva lærer du
Etter bestått emne skal studentene ha følgende læringsutbytte:
Kunnskaper og forståelse
Kandidaten kan
- forstå grunnleggende prinsipper for setningslogikk og Boolsk algebra, samt deres relevans for databehandling.
- beskrive tallsystemer (desimal, binær, heksadesimal, oktal) og deres egenskaper.
- forklare hvordan heltall representeres, inkludert negative tall med to-komplement (two’s complement), verdiområder og overflyt.
- forklare hvordan flyttall representeres (mantisse, eksponent, normalisering, spesialverdier) og hovedprinsippene i IEEE 754 (formater, presisjon, avrundingsmodi).
- gjøre rede for SI-prefikser vs. binære prefikser iht. IEEE 1541-2002 (kilo/kibi, mega/mebi osv.) og korrekt bruk i datateknikk.
- kjenne til numeriske typer i vanlige språk (Python, C++, MATLAB) og deres standarder, begrensninger og typiske bruksområder.
- forklare forskjellen mellom binære og tekstlige filformater, begreper som byte order (endianness) og grunnleggende filstruktur.
- forklare sammenhengen mellom adresse- og databredde (bits), ordstørrelse, adressering og justering (alignment), og hvilke konsekvenser disse har.
- gjøre rede for oppbygging av datamaskiners minne.
- gjenkjenne typiske problemtyper som egner seg for algoritmisk behandling og bruk av datastrukturer.
Ferdigheter
Kandidaten kan
- anvende logiske uttrykk i tekniske beskrivelser og dokumentasjon, og overføre formelle resonnementer til algoritmiske skisser ved behov.
- beskrive problemer og løsninger i formelle uttrykk (logiske formler, matematiske spesifikasjoner) og skissere enkle flytskjema eller pseudokode for å uttrykke algoritmiske ideer.
- konvertere mellom tallsystemer (desimal, binær, heksadesimal, oktal).
- utføre bitvise og logiske operasjoner, sette opp og analysere sannhetstabeller.
- avlese og konstruere bitmønstre for to-komplement; beregne verdiområder og identifisere heltallsoverflyt.
- dekode og konstruere IEEE 754-flyttall; analysere presisjon og avrundingsfeil i beregninger.
- lese og tolke hexdumps, binære representasjoner og enkle filformater; identifisere og håndtere byte order (endianness).
- beregne og rapportere lagrings- og båndbreddebehov med korrekte SI- og binære prefikser; dimensjonere datarepresentasjoner ut fra adresse-/databredde og justering.
- anvende grunnleggende statistiske og ingeniørfaglige analyseverktøy til relevante problemstillinger.
- analysere og løse faglige problemer ved å anvende teknikker og konsepter fra emnet.
Generell kompetanse
Kandidaten kan
- relatere kunnskap om datamaskinoppbygging, tallsystemer, logikk og datarepresentasjon til teknisk problemløsing, og begrunne hvorfor dette er sentralt i ingeniørarbeid og vitenskap.
- vurdere og begrunne metodiske valg for numeriske representasjoner, enheter (SI vs. binære prefikser), filformater og adresse-/databredde med hensyn til presisjon, ytelse, minneforbruk og interoperabilitet.
- anvende korrekt terminologi, symbolbruk og enheter i dokumentasjon og kommunikasjon.
- kommunisere tekniske konsepter og løsninger klart og presist til både fagfeller og ikke-spesialister.
- reflektere over konsekvenser av representasjons- og typevalg for portabilitet, reproduserbarhet og vedlikeholdbarhet.
Undervisnings- og eksamensspråk
Undervisning
Forelesninger og instruksjoner foreligger som opptak og forventes brukt av studentene. Det vil være noe kollektiv gjennomgang av eksempler og kollektivt styrte øvinger i starten. Gjennomføring av øving hvor veileder/assistent er tilgjengelig.
Verktøy som for eksempel MATLAB, SageMath, eller tilsvarende vil bli introdusert i løpet av kurset.
Det gis ikke undervisning i programmering i dette kurset. Studentene bør ha grunnleggende ferdigheter i programmering, inkludert bruk av valg og løkker, for eksempel i Python, for å kunne løse enkelte oppgaver. Det anbefales å ta kurset DTE-2510 Grunnleggende programmering samtidig.