autumn
2026
DTE-1520 Beregningsorientert programmering for datateknikk - 5 stp
Admission requirements
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
Course content
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
Objective of the course
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.
Teaching methods
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.
Schedule
Examination
| Examination: | Date: | Duration: | Grade scale: |
|---|---|---|---|
| Hjemmeeksamen | 16.11.2026 09:00 (Hand out) 16.11.2026 11:00 (Hand in) |
2 Timer | Pass – fail |
Coursework requirements:To take an examination, the student must have passed the following coursework requirements: |
|||
| Oppgaver | Approved – not approved | ||