Aktív témák
-
N0zer0
senior tag
válasz
unalmastolgy
#25
üzenetére
Gondolom programozás elméleten kellett a feladatot fejben megoldani és már nem aktuális. Ha megírod asm-ben és debuggerrel ellenőrzöd, akkor mutatni fogja az eredményeket. Fejben:
Az állapotjelző az állapotregiszterben (flag) lévő adat. Ennek minden bitje valamiről tájékoztat. Egyik a CF (Carry Flag), a másik a PF (Parity Flag), de van még sok bit.
I.
Első kérdés: a dword 4 byte-os adatméretet jelent, 8 elemű a tömb, ez 32 byte-nyi adat. A D[28], másképpen D[7*4] a tömb 28. byte-ja, azaz a 4 byte-os 7.elem értékének legalsó byte-ja: 3.MOV ( D[28] , EAX ) számomra nem értelmezhető, szintaktikailag hibás.
Helyette: MOV EAX, D[28]
EAX értéke 3. Ez alapján AH értéke 0, AL értéke 3.II.
A második kérdés szintaktikusan helyesen:
MOV EAX, D[28] // EAX értéke mint írtam már 3, ami binárisan 00000000-00000000-00000000-00000011
SAR EAX, 9 // az adatot jobbra tolja 9 bittel, és bal oldalra a signum bit értéke íródik. Módosított flag-ek: cf, zf, of, pf, sf.00000000-00000000-00000000-00000011
Ezt eltolva jobbra 9 bittel, majd az előjel bit értéke 1.
Eredmény EAX-ben:
10000000-00000000-00000000-00000000
AX az utoló 16 bit:
00000000-00000000
Ez decimálisan és hexadecimálisan is 0CF értéke 1, mert jobb oldalon 1-es bit esett ki az eltolás folyamán. PF értéke 0, mert az eredmény szélén 0-ás bit lett (páros szám lett az eredémy).
-
N0zer0
senior tag
Újabb voks a C-re. Sztem azért jó, mert sok nyelv szintaxisa a C-ből merít vagy legalábbis nagyon hasonlít rá. IDE környzet használatát én sem javaslom, tanulja meg szépen a lelkes újonc a kézzel fordítást.
Ha már megy akkor később jöhet ízlés szerint a c# vagy c++ az OOP miatt.
Aktív témák
- PCIe 5.0/4.0/3.0 Riser kábelek 90-os hajlított csatlakozóval (220mm/300mm)
- BESZÁMÍTÁS! Akár részletfizetés 0% THM ÚJ AMD RYZEN AM4 processzorok 3 év garanciával 27% áfaval
- Lenovo ThinkStation P330 Gen 2 Tower workstation /számla- garancia
- BESZÁMÍTÁS! MSI Cyborg 15 A12VF FHD GAMER notebook - i5 12450H 16GB DDR5 512GB SSD RTX 4060 8GB
- Corsair VENGEANCE Pro 32GB (4x8GB) DDR4 2800MHz
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest

