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í
×
    dnes 04:55 | Nová verze

    Squeak (Wikipedie), open source implementace programovacího jazyka a prostředí Smalltalk, byl vydán ve verzi 6.1. Přehled novinek v poznámkách k vydání.

    Ladislav Hagara | Komentářů: 0
    dnes 04:44 | Bezpečnostní upozornění

    V Linuxu v KVM byla nalezena a v upstreamu již byla opravena kritická zranitelnost Zapscape aneb CVE-2026-64561. Root na hostovaném počítači (virtuální stroj) může obejít izolaci a získat plnou kontrolu nad hostitelským systémem (DoS útok nebo vzdálené spuštění kódu s právy roota). Na obou hlavních architekturách – Intel i AMD. Zranitelnost v Linuxu existovala 6 let (od července 2020 do července 2026).

    Ladislav Hagara | Komentářů: 0
    včera 19:00 | IT novinky

    Počítačová hra Knytt napsaná v Multimedia Fusion 2 byla vydána před 20 lety. Při této příležitosti byl dnes představen moderní port (YouTube) této plošinovky na současné operační systémy pod názvem Knytt Classic. Je zdarma k dispozici na Steamu a GOG.com.

    Ladislav Hagara | Komentářů: 0
    včera 16:00 | IT novinky

    Americká technologická společnost Meta Platforms představila nový model umělé inteligence (AI) Muse Glimmer. Model je menší než přední modely AI od konkurence a má běžet přímo na počítačích uživatelů. Meta model zpřístupní jako open source, tedy otevřený software. Nový model je navržen tak, aby zvládal takzvané agentní úkoly na počítačích se spotřebitelskou grafickou kartou. Klade si tak za cíl uspokojit poptávku po systémech AI, které běží přímo na zařízeních uživatelů.

    Ladislav Hagara | Komentářů: 8
    včera 12:11 | Pozvánky

    V pátek 28. srpna 2026 se v pražském Karlíně uskuteční již osmý Mobilní Hackday. Akce začne v 10:00 a potrvá až do večera. Setkání proběhne v prostorách SUSE Linux, s.r.o. na adrese Křižíkova 148/34, Praha 8 – Karlín. Nejbližší zastávkou je Křižíkova, kam se lze dostat tramvají i metrem. Na programu budou například novinky z posledních měsíců, možnosti, jak si zjednodušit práci s LLM/AI, a také nová linuxová distribuce BengalOS, včetně … více »

    David Heidelberg | Komentářů: 0
    9.8. 17:22 | Nová verze

    Jakub Vrána vydal Adminer ve verzi 6.0.0 s více než 130 změnami: "Většina změn vznikla s asistencí Claude Opus 5. Někteří lidi se bojí, že AI asistence může kód zamořit technickým dluhem. To je jistě pravda, pokud vývojář všechny změny bezduše odbouchne Enterem. Ale pokud si pořádně projde plán, vyjedná v něm změny a pak totéž udělá i s vygenerovaným kódem, kvalita kódu stoupne a technický dluh naopak klesne. Je to jako párové programování s

    … více »
    Ladislav Hagara | Komentářů: 1
    9.8. 12:44 | Nová verze

    Sam Aaron vydal novou major verzi 5.0.0 aplikace Sonic Pi (Wikipedie) určené také pro výuku programování pomocí skládání hudby. Přehled novinek na GitHubu. Instalovat lze také z Flathubu.

    Ladislav Hagara | Komentářů: 0
    8.8. 04:44 | IT novinky

    U příležitosti 30. výročí vydání počítačové hry Quake byla vydána nová epizoda s názvem Dawn of the Machine (Steam).

    Ladislav Hagara | Komentářů: 8
    7.8. 16:00 | Bezpečnostní upozornění

    Vládní CERT upozorňuje (𝕏) na sérii bezpečnostních záplat (CVSS 9.9) v produktech Cisco řešících kritické zranitelnosti umožňující obejití autentizace, eskalaci oprávnění, vzdálené spuštění kódu a odepření služby. Úspěšné zneužití může útočníkům umožnit získat neoprávněný přístup k dotčeným systémům, kompromitovat zařízení Cisco Catalyst SD-WAN a Cisco IOS XE, spustit libovolný kód, zpřístupnit citlivé informace nebo narušit dostupnost postižených systémů.

    Ladislav Hagara | Komentářů: 6
    7.8. 15:33 | IT novinky

    Soud v americkém státě Nové Mexiko ve čtvrtek nařídil internetové společnosti Meta Platforms zaplatit 567 milionů dolarů (téměř 12 miliard Kč) za újmy, které její platformy působí mladým lidem. S přihlédnutím k dřívějšímu verdiktu tak má společnost celkem zaplatit 942 milionů dolarů, což je malý zlomek jejího ročního výnosu, který loni činil 60 miliard dolarů. Čtvrteční verdikt firmě také nařizuje, aby změnila způsob, jakým její

    … více »
    Ladislav Hagara | Komentářů: 20
    Které desktopové prostředí na Linuxu používáte?
     (10%)
     (7%)
     (2%)
     (18%)
     (30%)
     (6%)
     (6%)
     (2%)
     (15%)
     (23%)
    Celkem 2364 hlasů
     Komentářů: 30, poslední 3.4. 20:20
    Rozcestník


    Dotaz: assembler secteni cisla

    15.1.2006 02:45 _change
    assembler secteni cisla
    Přečteno: 577×
    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: 80 | 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.