Torna indietro   Hardware Upgrade Forum > Software > Programmazione

Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria
vivo X300 Pro rappresenta un'evoluzione misurata della serie fotografica del produttore cinese, con un sistema di fotocamere migliorato, chipset Dimensity 9500 di ultima generazione e l'arrivo dell'interfaccia OriginOS 6 anche sui modelli internazionali. La scelta di limitare la batteria a 5.440mAh nel mercato europeo, rispetto ai 6.510mAh disponibili altrove, fa storcere un po' il naso
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo
Lenovo Legion Go 2 è la nuova handheld PC gaming con processore AMD Ryzen Z2 Extreme (8 core Zen 5/5c, GPU RDNA 3.5 16 CU) e schermo OLED 8,8" 1920x1200 144Hz. È dotata anche di controller rimovibili TrueStrike con joystick Hall effect e una batteria da 74Wh. Rispetto al dispositivo che l'ha preceduta, migliora ergonomia e prestazioni a basse risoluzioni, ma pesa 920g e costa 1.299€ nella configurazione con 32GB RAM/1TB SSD e Z2 Extreme
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti
A re:Invent 2025, AWS mostra un’evoluzione profonda della propria strategia: l’IA diventa una piattaforma di servizi sempre più pronta all’uso, con agenti e modelli preconfigurati che accelerano lo sviluppo, mentre il cloud resta la base imprescindibile per governare dati, complessità e lock-in in uno scenario sempre più orientato all’hybrid cloud
Tutti gli articoli Tutte le news

Vai al Forum
Discussione Chiusa
 
Strumenti
Old 10-07-2007, 15:44   #1
max_smp_
Member
 
L'Avatar di max_smp_
 
Iscritto dal: Mar 2007
Messaggi: 170
[assembler] aiuto per 3 programmi che devo fare

salve a tutti, sono nuovo, un pò disperato e anche ignorante (perchè spero che si possa chiedere una cosa del genere, anche se non ho trovato nessuna regola che lo vieta)
la questione è molto semplice, per dare un esame devo prima consegnare 3 elaborati in assembler, ma se il resto della materia l'ho capito bene, la parte di assembler (che tra l'altro non è la + importante durante la prova scritta) è per me assoluto arabo...è una materia nuova, ma se in programazione c so almeno come potermi muovere, in assembler prorpio non ho capito dove mettere le mani...
se io metto i titoli degli elaborati (che per voi saranno assolute cavolate), qualcuno avrebbe voglia di indirizzarmi sul cosa e come fare? (anche trovarmi il programma già fatto non sarebbe male, ma sono realista e mi accontento anche di meno )
un grazie anticipato a chi prenderà parte in questa impresa

1.cifrare/decifrare un testo con il cifrario di Vigenère, data la parola chiave. Nle testo cifrato il codice ASCII di ogni carattere è aumentato dal codice ASCII del corrispondente carattere nella parola chiave sovrapposta al testo.
input: due stringhe (testo cifrato o da cifrare e parola chiave), entrambi array di BYTE terminanti con 0;un BYTE (0 se il testo è da cifrare, 1 se è da decifrare)
output: una nuova stringa (un array di BYTE da terminare con il valore 0) contenente il testo cifrato (o decifrato)

2. Calcolare la matrice di DWORD prodotto di due matrici di WORD. Le matrici sono memorizzate per righe all'interno di un array monodimensionali. Gli elementi delle matrici sono da considerarsi con segno (in complemento a due)
input: 3 DWORD (numero di righe e di colonne della prima matrice, numero di colonne della seconda matrie); due array di WORD ( le due matrici memorizzate per righe)
output: un array di DWORD (contenente la matrice prodotto memorizzata per righe)

3. Data una sequenza di bit, individuare la più lunga sotto-sequnza di bit a 1 (contigui) e restituirne la lunghezza.
input: un'array di BYTE da considerare come sequenza di bit (i bit in ogni byte sono ordinati dal meno significativo al più significativo); una DWORD (il numero totale di bit)
output: una DWORD (la lughezza della sotto-sequenza di 1 + lunga)
max_smp_ è offline  
Old 10-07-2007, 16:16   #2
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da max_smp_ Guarda i messaggi
devo prima consegnare 3 elaborati in assembler
Innanzitutto assembly di quale processore? Inoltre devi soltanto scrivere la sola parte di codice a livello "teorico" o devi scrivere proprio il programma completo da assemblare ed eseguire? E in quest'ultimo caso, quali software e su quale S.O. vuoi o puoi usare?
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline  
Old 10-07-2007, 18:53   #3
max_smp_
Member
 
L'Avatar di max_smp_
 
Iscritto dal: Mar 2007
Messaggi: 170
rispondendo in ordine:
-l'assembly di un processore x86, e in particolare abbiamo trattato solo i processori pentium con supporto MMX, quindi niente di troppo recente
-devo proprio scrivere il programma da assemblare ed eseguire
-il S.O. è windows xp e tramite e con il corso mi hanno dato visual studio 2005, quindi questi 3 progetti devo farli con quello, però se conosci altri software con cui poter fare dei programmi in assembly, elenca pure, che visual mi è troppo pesante e preferisco conoscere anche altri programmi
max_smp_ è offline  
Old 11-07-2007, 10:05   #4
andbin
Senior Member
 
L'Avatar di andbin
 
Iscritto dal: Nov 2005
Città: TO
Messaggi: 5206
Quote:
Originariamente inviato da max_smp_ Guarda i messaggi
-l'assembly di un processore x86, e in particolare abbiamo trattato solo i processori pentium con supporto MMX, quindi niente di troppo recente
Ok. Beh, comunque è già abbastanza recente, se escludi le estensioni più specifiche come SSE o le 3DNow! di AMD.

Quote:
Originariamente inviato da max_smp_ Guarda i messaggi
-devo proprio scrivere il programma da assemblare ed eseguire
-il S.O. è windows xp e tramite e con il corso mi hanno dato visual studio 2005, quindi questi 3 progetti devo farli con quello, però se conosci altri software con cui poter fare dei programmi in assembly, elenca pure, che visual mi è troppo pesante e preferisco conoscere anche altri programmi
Visual studio 2005 è la suite completa, se vuoi fare qualcosa in assembly dovresti usare il solo Visual C++ 2005. Con il VC++ il target è chiaramente quello di realizzare applicazioni Win32 e il modo più semplice e veloce per usare del codice assembly è scriverlo "inline", cioè dentro un sorgente C/C++ usando una apposita sintassi.

Altri software dedicati all'assembly ci sono, ovviamente. I tre principali software sono i "soliti": TASM (della Borland), MASM (della Microsoft) e NASM (opensource). Cercali con google o meglio su Wikipedia per avere altre info.
Non sono gli unici, sebbene siano quelli più conosciuti e validi.

Se vuoi usare l'assembly inline del VC++, ecco un esempio:
Codice:
#include <stdio.h>

int main (void)
{
    int valore = 1234;
    char bin[33];

    __asm
    {
            mov     eax, valore
            mov     ecx, 32
            lea     edi, bin
        loop1:
            shl     eax, 1
            mov     bl, '0'
            adc     bl, 0
            mov     [edi], bl
            inc     edi
            loop    loop1

            mov     [byte ptr edi], 0
    }

    printf ("%d in binario %s\n", valore, bin);

    return 0;
}
__________________
Andrea, SCJP 5 (91%) - SCWCD 5 (94%)
andbin è offline  
Old 10-05-2015, 14:19   #5
ettore1992
Bannato
 
Iscritto dal: May 2015
Messaggi: 4
ciao max, alla fine sei riuscito ad avere la soluzione del primo elaborato?
ettore1992 è offline  
 Discussione Chiusa


Recensione vivo X300 Pro: è ancora lui il re della fotografia mobile, peccato per la batteria Recensione vivo X300 Pro: è ancora lui il...
Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'' per spingere gli handheld gaming PC al massimo Lenovo Legion Go 2: Ryzen Z2 Extreme e OLED 8,8'...
AWS re:Invent 2025: inizia l'era dell'AI-as-a-Service con al centro gli agenti AWS re:Invent 2025: inizia l'era dell'AI-as-a-Se...
Cos'è la bolla dell'IA e perché se ne parla Cos'è la bolla dell'IA e perché se...
BOOX Palma 2 Pro in prova: l'e-reader diventa a colori, e davvero tascabile BOOX Palma 2 Pro in prova: l'e-reader diventa a ...
Nuove informazioni sul fallimento del la...
SpaceX: completato parte dell'assemblagg...
Landspace si prepara al secondo lancio d...
Tutti gli sconti Apple su Amazon: tornan...
Altro che entry-level: due smartwatch Am...
Roscosmos ha posticipato (ancora) il lan...
Isar Aerospace si prepara al secondo lan...
Tory Bruno è entrato in Blue Orig...
Fujifilm lancia la cartuccia per archivi...
Dreame H15 Mix: la soluzione 7-in-1 per ...
AirPods Pro 3 in forte sconto su Amazon:...
36 offerte Amazon, molte appena partite:...
2 caricatori multipli eccezionali: da 28...
OLED e 360 Hz a un prezzo senza preceden...
Roborock Q10 S5+ a un prezzo molto conve...
Chromium
GPU-Z
OCCT
LibreOffice Portable
Opera One Portable
Opera One 106
CCleaner Portable
CCleaner Standard
Cpu-Z
Driver NVIDIA GeForce 546.65 WHQL
SmartFTP
Trillian
Google Chrome Portable
Google Chrome 120
VirtualBox
Tutti gli articoli Tutte le news Tutti i download

Strumenti

Regole
Non Puoi aprire nuove discussioni
Non Puoi rispondere ai messaggi
Non Puoi allegare file
Non Puoi modificare i tuoi messaggi

Il codice vB è On
Le Faccine sono On
Il codice [IMG] è On
Il codice HTML è Off
Vai al Forum


Tutti gli orari sono GMT +1. Ora sono le: 21:26.


Powered by vBulletin® Version 3.6.4
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Served by www3v