10: Smalamálsforritun Flashcards

(45 cards)

1
Q

Gagnaflutningsskipunin mov er til í nokkrum útgáfum :

A

Eftir því hversu mörg bæti mov flytur

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

movb

A

Flytja eitt bæti

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

movw

A

Flytja eitt orð (2 bæti)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

movl

A

Flytja eitt tvíorð (4 bæti)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

movq

A

Flytja eitt fjórorð (8 bæti)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

0x

A

Hex tala

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Ekki 0x

A

Tugatala

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

movb $-17, (%esp)

A

Setja töluna -17 í hólf sem esp bendir á, movb segir okkur að þetta sé 1 bæti

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Svigi og ekki svigi

A

Ekki svigi : Setja í gistið sjálft
Svigi : Setja í hólf sem () bendir á

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

movq %rax, -12(%rbp)

A

Færum %rax í það sem rbp bendir á en bætum -12 við það sem rbp bendir á, movq segir að við séum að fara átta bæti

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Viðföng geta verið ?

A

gisti eða minnisvistfang

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Þegar minna gildi er flutt yfir í stærra hólf þá þarf að
víkka (extend) gildið

A

Núllvíkkun: Bæta 0-um fremst
Formerkisvíkkun: Bæta gildi formerkisbita fremst

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

movzsd

A

Núllvíkkun (move zero)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

movssd

A

Formerkisvíkkun (move sign)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

s getur verið

A

b, w eða l (bæti,word eða long word)

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

d getur verið

A

w, l, q

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
17
Q

movzbl (%rax), %eax

A

1 bæti verður að fjórum bætum
núllvíkkka

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
18
Q

movzwq %dx, (%rsp,%rdx)

Hvert ert gistið?

A

Innið haldið á rsp plús innihaldið á rdx mynda gistið

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
19
Q

leaq

A

Skipun sem reiknar vistföng

Load Effective Address Quadword

20
Q

Notkun á leaq

A

Reikna vistföng án minnistilvísunar

Reikna reiknisegðir af gerðinni x + k*y

21
Q

addq (Src,Dest)

A

Dest = Dest + Src

22
Q

subq (Src,Dest)

A

Dest = Dest - Src

23
Q

imulq (Src,Dest)

A

Dest = Dest * Src

24
Q

salq (Src,Dest)

A

Dest = Dest &laquo_space;Src

25
sarq (Src,Dest)
Dest = Dest >> Src Formerkisbiti
26
shrq (Src,Dest)
Dest = Dest >> Src Alltaf núll
27
xorq (Src,Dest)
Dest = Dest ^ Src
28
andq (Src,Dest)
Dest = Dest & Src
29
orq (Src,Dest)
Dest = Dest | Src
30
incq (Dest)
Dest = Dest + 1
31
decq
Dest = Dest - 1
32
negq
Dest = − Dest Neita, tvíandhverfa
33
notq
Dest = ~Dest Flippa öllum bitunum
34
rdi
fyrsta viðfangið
35
rsi
annað viðfangið
36
rdx
þriðja viðfangið
37
Frá C yfir í keyrslukóða þýða Forrit í skrám p1.c p2.c
Þýða með skipuninni: gcc –Og p1.c p2.c -o p
38
Compiler Explorer (godbolt.org) leyfir okkur að?
Skoða smalamálskóða mismunandi þýðenda:
39
Línur sem byrja á "." eru ?
tilskipanir (directives) tengiforritsins (linker) og segja m.a. til um skipulag stefsins og hvernig það notar minni
40
Hvað er skipunin endbr64 ?
Þetta er öryggisráðstöfun til að tryggja að hopp geti ekki stokkið inn í miðjar skipanir. Hægt að slökkva á þessu með gcc rofanum -fcf-protection=none
41
Hvað gerir Smali (assembler)?
Þýðir .s yfir í .o Breytir smalamálskóða yfir í vélamálskóða
42
Hvað gerir Tengir (linker)?
Leysir úr tilvísunum á milli skráa Tengir við keyrsluforritasöfn
43
Afsmali (disassembler)
Breytir vélarmálskóða yfir í smalamálskóða
44
objdump –d sum
Afsmali Hægt að keyra á a.out (keyrsluskrá) eða .o skrá
45
Líkt hægt að afsmala með?
gdb