abclinuxu.cz AbcLinuxu.cz itbiz.cz ITBiz.cz HDmag.cz HDmag.cz abcprace.cz AbcPráce.cz
AbcLinuxu hledá autory!
Inzerujte na AbcPráce.cz od 950 Kč
Rozšířené hledání
×
eParkomat, startup z ČR, postoupil mezi finalisty evropského akcelerátoru ChallengeUp!
Robot na pivo mu otevřel dveře k opravdovému byznysu
Internet věcí: Propojený svět? Už se to blíží...
dnes 15:30 | Zajímavý projekt

Společnost Jolla oznámila v příspěvku Case study: Sailfish Watch na svém blogu, že naportovala Sailfish OS na chytré hodinky. Využila a inspirovala se otevřeným operačním systémem pro chytré hodinky AsteroidOS. Použita je knihovna libhybris. Ukázka ovládání hodinek na YouTube.

Ladislav Hagara | Komentářů: 1
dnes 14:15 | Nová verze

Byla vydána verze 7.1.0 skriptovacího jazyka PHP používaného zejména k vývoji dynamických webových stránek. Jedná se o první stabilní verzi nejnovější větvě 7.1. Přehled novinek v dokumentaci. Podrobnosti v ChangeLogu. K dispozici je také příručka pro přechod z PHP 7.0.x na PHP 7.1.x.

Ladislav Hagara | Komentářů: 0
dnes 12:55 | Nová verze

Google Chrome 55 byl prohlášen za stabilní. Nejnovější stabilní verze 55.0.2883.75 tohoto webového prohlížeče přináší řadu oprav a vylepšení (YouTube). Opraveno bylo také 36 bezpečnostních chyb. Mariusz Mlynski si například vydělal 22 500 dolarů za 3 nahlášené chyby (Universal XSS in Blink).

Ladislav Hagara | Komentářů: 1
dnes 11:55 | Pozvánky

Máte rádi svobodný software a hardware nebo se o nich chcete něco dozvědět? Přijďte na 135. sraz spolku OpenAlt, který se bude konat ve čtvrtek 8. prosince od 18:00 v Radegastovně Perón (Stroupežnického 20, Praha 5). Sraz bude tentokrát tématický. Bude retro! K vidění budou přístroje jako Psion 5mx nebo Palm Z22. Ze svobodného hardwaru pak Openmoko nebo čtečka WikiReader. Přijďte se i vy pochlubit svými legendami, nebo alespoň na pivo. Moderní hardware má vstup samozřejmě také povolen.

xkucf03 | Komentářů: 0
dnes 00:10 | Nová verze

Byla vydána verze 3.2 svobodného systému pro detekci a prevenci průniků a monitorování bezpečnosti počítačových sítí Suricata. Z novinek lze zmínit například podporu protokolů DNP3 a CIP/ENIP, vylepšenou podporu TLS a samozřejmě také aktualizovanou dokumentaci.

Ladislav Hagara | Komentářů: 0
včera 21:00 | Nová verze

Byla vydána beta verze Linux Mintu 18.1 s kódovým jménem Serena. Na blogu Linux Mintu jsou hned dvě oznámení. První o vydání Linux Mintu s prostředím MATE a druhé o vydání Linux Mintu s prostředím Cinnamon. Stejným způsobem jsou rozděleny také poznámky k vydání (MATE, Cinnamon) a přehled novinek s náhledy (MATE, Cinnamon). Linux Mint 18.1 bude podporován až do roku 2021.

Ladislav Hagara | Komentářů: 0
včera 16:42 | Nová verze

Byl vydán Devuan Jessie 1.0 Beta 2. Jedná se o druhou beta verzi forku Debianu bez systemd představeného v listopadu 2014 (zprávička). První beta verze byla vydána v dubnu letošního roku (zprávička). Jedna z posledních přednášek věnovaných Devuanu proběhla v listopadu na konferenci FSCONS 2016 (YouTube, pdf).

Ladislav Hagara | Komentářů: 0
včera 15:16 | Komunita

Na GOG.com začal zimní výprodej. Řada zlevněných her běží oficiálně také na Linuxu. Hru Neverwinter Nights Diamond lze dva dny získat zdarma. Hra dle stránek GOG.com na Linuxu neběží. Pomocí návodu ji lze ale rozběhnout také na Linuxu [Gaming On Linux].

Ladislav Hagara | Komentářů: 1
včera 13:14 | Bezpečnostní upozornění

Byla vydána verze 2.7.1 živé linuxové distribuce Tails (The Amnesic Incognito Live System), jež klade důraz na ochranu soukromí uživatelů a anonymitu. Řešeno je několik bezpečnostních problémů. Aktualizován byl především Tor Browser na verzi 6.0.7. Tor Browser je postaven na Firefoxu ESR (Extended Support Release) a právě ve Firefoxu byla nalezena a opravena vážná bezpečnostní chyba MFSA 2016-92 (CVE-2016-9079, Firefox SVG Animation

… více »
Ladislav Hagara | Komentářů: 0
30.11. 19:19 | Nová verze

Příspěvek na blogu nadace Raspberry Pi je věnován bezpečnostním vylepšením v nejnovější verzi Raspbianu s desktopovým prostředím PIXEL. V oficiálních obrazech je nově zakázán SSH přístup. Ten lze samozřejmě povolit po zavedení Raspbianu pomocí nástroje raspi-config. Nemá-li uživatel k Raspberry Pi připojený terminál, může SSH přístup povolit vytvořením souboru ssh v adresáři /boot. Raspbian nově upozorňuje uživatele na bezpečnostní riziko, je-li SSH přístup povolen a uživatel pi nemá změněno výchozí heslo.

Ladislav Hagara | Komentářů: 41
Kolik máte dat ve svém domovském adresáři na svém primárním osobním počítači?
 (32%)
 (24%)
 (29%)
 (7%)
 (5%)
 (3%)
Celkem 755 hlasů
 Komentářů: 50, poslední 29.11. 15:50
Rozcestník
Reklama

Dotaz: assembler secteni cisla

15.1.2006 02:45 _change
assembler secteni cisla
Přečteno: 376×
Zdravim vsechny mam takovy zacatecnicky problem, kdy nevim jak prinutit aby mi po secteni dvou cisel vytiskl danou promennou vysledek, takhle mi to vytiskne nic. diky za pomoc, jeslti nekdo vi jak.
SECTION .data
cislo1 dd 8
cislo2 dd 2
vysledek dd 0


SECTION .text
global _start 
_start:

mov eax,[cislo1]
mov ebx,[cislo2]
add eax,ebx    ;sectu cisla
mov [vysledek],eax   ;ulozim do vysledku

mov eax,4  ;prvni parametr cislo systemoveh ovolani
mov ebx,1  ;vim, ze konstanta stdout ma hodnotu 1
mov ecx,vysledek
mov edx,32 ;pocet znaku
int 0x80   ;zavolame jadro

mov eax,1  ;cislo volani jadra - exit
mov ebx,0  ;navratovy kod 0
int 0x80   ;zavolame jadro

Odpovědi

15.1.2006 08:00 Michal Pokorný | skóre: 6
Rozbalit Rozbalit vše Re: assembler secteni cisla
No já taky nejsem nějak extra dobrej programátor, ale řekl bych, že tu chybý konverze z datovédo typu dd (4-bytové celé číslo) na řetězec ;)
15.1.2006 10:14 Jirka | skóre: 36
Rozbalit Rozbalit vše Re: assembler secteni cisla
Tato funkce by mela vypsat obsah registru AL, ale je to delane pomoci sluzeb DOSu. Doufam, ze se nikdo nebude zlobit, ze jsem to tu dal: ps: jen pro uplnost: int 21h zpusobi preruseni, tim se (podle obsahu registru - z hlavy to neznam) zavola pozadovana sluzba. A u techto funkci staci do AX zapsat byte. Vim, ze to je pro 16 bitovy rezim, ale pro 32 bitu by nemelo byt tezke to prepsat. Doufam ze jsem na nic nezapomnel. Vytahl jsem to z jedne knihovny, kterou mam k dispozici.

segment code

Write_Word:             ; AX=Byte
	pushf
    	pusha
    	mov si,4
    	mov bx,10
wwcyc1: mov dx,0
        div bx
    	add dl,'0'
	mov [z_w+si],dl
        dec si
        cmp si,0
        jnz wwcyc1
        add al,'0'
	mov [z_w],al
    	mov dx,z_w
    	mov si,0
wwcyc2: cmp [z_w+si],byte '0'
    	jne wwcont
    	inc dx
    	inc si
    	cmp si,4
    	jne wwcyc2
wwcont: call Print_Str   ; viz. nize
	popa
	popf
	ret

Print_Str:              ; DX=String_offset, String='???....???','$'
        pushf
        pusha
        mov ah,9
        int 21h         ;volani sluzeb DOSu
        popa
        popf
        ret

        segment data
z_w     resb 2

Jardík avatar 15.1.2006 11:37 Jardík | skóre: 40 | blog: jarda_bloguje
Rozbalit Rozbalit vše Re: assembler secteni cisla
Opravdu tam chybí převod čísla na řetězec. Funkce na převod:
;--------------
;NumToAscii
;--------------
; eax = 32b číslo
; ebx = základ soustavy
; edi = pointer na buffer, kam bude uložen text
;--------------

NumToAscii:
pushad
xor esi,esi
.smycka_prevodu:
xor edx,edx
div ebx
call HexDigit
push edx
inc esi
test eax,eax
jnz .smycka_prevodu
cld
.smycka_zapis:
pop eax
stosb
dec esi
test esi,esi
jnz .smycka_zapis
popad
ret
HexDigit:
cmp dl,10
jb .mensi
add dl,'A'-10
ret
.mensi:
or dl,'0'
ret
Použití:
mov eax,[vysledek]
mov edi,buffer
call preved

v sekci .DATA
buffer:
TIMES 12 DB 0
Délku můžeš zjistit pomocí strlen:
strlen:
push eax
xor ecx,ecx
xor eax,eax
dec ecx
cld
repne scasb
neg ecx
pop eax
ret
Řetězec musí být uložen v ES:EDI a délka se vrátí v ecx. Jinak, abyste neřekli, že jsem blázen, tak prozradím, že je to z knihy Učíme se programovat v jazyce assembler pro PC
Věřím v jednoho Boha.
18.1.2006 11:40 _change
Rozbalit Rozbalit vše Re: assembler secteni cisla
diky, ale bohuzel zkousel jsem to nejak dat dohromady, a porad mi to nejde, nevim jak ten program dat dohromady, aby to fungovalo,nevite nekdo pls?
18.1.2006 12:46 Petr Šobáň | skóre: 79 | blog: soban | Olomouc
Rozbalit Rozbalit vše Re: assembler secteni cisla
A proč to píšeš v asm napiš to normálně v C a je po ptákách.
Jardík avatar 24.2.2006 22:37 Jardík | skóre: 40 | blog: jarda_bloguje
Rozbalit Rozbalit vše Re: assembler secteni cisla
Zde je funkční řešení tvého problému:
; překlad:
; nasm -f elf preved.asm
; ld -s -o preved preved.o

SECTION .text
global _start

_start:



; Sečtu Cislo1+Cislo2, výsledek do Vysledek
mov eax,[Cislo1]
mov ebx,[Cislo2]
add eax,ebx
mov [Vysledek],eax

; Převedu Vysledek na text do VysledekText
mov eax,[Vysledek]
mov ebx,10
mov edi,VysledekText
call NumToAscii

; Vytisknu vysledek

mov ebx,VysledekText	   ; ukazatel na text do ebx
mov esi,ebx            ; uložím ho ještě do esi
xor edx,edx

.next:
inc edx                ;v edx počítáme počet znaků, co budeme tisknout
lodsb                  ;načteme znak do al a k esi přičteme 1
or al,al               ;jsme už na konci řetězce (al==0)
jnz .next              ;ne? přičteme další znak
mov byte [esi-1],0xa   ;zapíšeme místo nulového byte na konci řetězce znak nového řádku


mov eax,4              ;systémové volání write( ebx = KAM, ecx = CO, edx = KOLIK )
mov ecx, ebx           ;v ebx byla adresa řetězce
mov ebx,1              ;STDOUT
                       ;v edx již je počet znaků
int 0x80               ;přerušení



; konec programu
mov eax, 1
mov ebx, 0
int 0x80


;--------------
;NumToAscii
;--------------
; eax = 32b číslo
; ebx = základ soustavy
; edi = pointer na buffer, kam bude uložen text
;--------------

NumToAscii:
pushad
xor esi,esi
.smycka_prevodu:
xor edx,edx
div ebx
call HexDigit
push edx
inc esi
test eax,eax
jnz .smycka_prevodu
cld
.smycka_zapis:
pop eax
stosb
dec esi
test esi,esi
jnz .smycka_zapis
popad
ret
HexDigit:
cmp dl,10
jb .mensi
add dl,'A'-10
ret
.mensi:
or dl,'0'
ret



;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;
;; DATA

SECTION .data

VysledekText TIMES 20 db 0
Cislo1 dd 8
Cislo2 dd 2
Vysledek dd 0
Věřím v jednoho Boha.

Založit nové vláknoNahoru

Tiskni Sdílej: Linkuj Jaggni to Vybrali.sme.sk Google Del.icio.us Facebook

ISSN 1214-1267   www.czech-server.cz
© 1999-2015 Nitemedia s. r. o. Všechna práva vyhrazena.