fbpx
Skip to main content

[LA] Linux avanzato 2008

Di più
17 Anni 8 Mesi fa #67026 da Massimiliano Bontempi
Questa è facile... alcuni documenti (asm per motorola) usano la sintassi
.section ".data"
.section ".text"
.section [.rodata|.bss|........]
ma nel nostro caso le prima due, siccome sono standard, si eliminata .section.

Da quanto ho capito si potrebbe mettere una etichetta qualunque se venissero passate a mano le flag con una sintassi (all'incirca)
.section .mySection {r,,x} (equivale a .text)

Cmq:
- a seconda di dove si mette il codice questo può essere letto, scritto, eseguito e combinazioni varie
- specificare la section serve a switchare fra le sezioni (una volta dichiarata rimane quella fini alla prossima .section)

PS: Il tuo esercizio assembler non l'ho mica capito... tra parentesi leggendo la dispensa non ho capito nemmeno il significato di quasi tutte le etichette tipo .section .rodata . text ecc

Si prega Accedi o Crea un account a partecipare alla conversazione.

Di più
17 Anni 8 Mesi fa #67028 da Massimiliano Bontempi
La dispensa da cui hai tratto ispirazione concerne "contatori sincroni"... ma FF RS è un componente asincrono.

Se si potessero utilizzare i FF T (e ancora meglio JK) allora basterebbe costruire un divisore di frequenza.... ogni FF (tranne il primo) riceve come clock l'uscita negata del componente precedente e l'ingresso fisso a 1. Così quando l'iesimo scatta a 0 l'(i+1)esimo è abilitato a scattare su 1.

Non chiedetemi se l'hanno spiegato ad elettronica oppure ad architetture....

ciao! io dopo la sparata iniziale di sostituire i FF T con gli SR lo feci seguendo queste slides (del politecnico di milano, altro che angelaccio! :) )

corsi.dei.polimi.it/RetiLogicheA ... tatori.pdf

e mi venne che
Ri=Q0*Q1*..*Qi-1
Si=(Qi XOR Qi-1)*Qi-2*...*Q0

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • COM_EASYSOCIAL_GUEST_NAME
  • Avatar di COM_EASYSOCIAL_GUEST_NAME
  • Visitatori
  • Visitatori
17 Anni 8 Mesi fa #67039 da COM_EASYSOCIAL_GUEST_NAME
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic [LA] Linux avanzato 2008

ma FF RS è un componente asincrono.

ciao!
Ma sei sicuro?
in genere tutti i libri (ho il bolchini-brandolese tra le mani) cominciano col descrivere il latch SR asincrono e poi dicono che con quel tipo di bistabile il problema più grosso sono i transitori indesiderati e quindi introducono il concetto di clock e passano a parlare del latch SR sincrono per seguitare con i FF Master-Slave di tipo SR, D, JK, T ecc ecc..
:?
tu cosa intendi per asincrono?

Si prega Accedi o Crea un account a partecipare alla conversazione.

  • COM_EASYSOCIAL_GUEST_NAME
  • Avatar di COM_EASYSOCIAL_GUEST_NAME
  • Visitatori
  • Visitatori
17 Anni 8 Mesi fa #67040 da COM_EASYSOCIAL_GUEST_NAME
Risposta da COM_EASYSOCIAL_GUEST_NAME al topic [LA] Linux avanzato 2008
questa cosa dei FF SR asincroni mi ha un pò incuriosito.. :)
anche a pagina 60 del 2o "giornaletto" di angelaccio (quello rosso) c'e' l'esempio di sintesi di un automa con FF SR in cui il Clock c'e' eccome.. E il meccanismo di sintesi è simile a quello nelle slides del politecnico di milano.

ho notato che sui libri in genere per FF s'intende un circuito del tipo master-slave (Che poi è il primo tipo di FF che viene introdotto) mentre in internet (es wikipedia) per flip flop SR intendono quello che sui libri chiamano latch (ossia per capirci il circuito semplice con solo 2 NOR)..

forse è solo confusione indotta dalla terminologia e i "nostri" FF SR sono sincroni? :D

Si prega Accedi o Crea un account a partecipare alla conversazione.

Di più
17 Anni 8 Mesi fa #67052 da Massimiliano Bontempi
Questa dispensa la considero affidabile
reti1.diit.unict.it/mirabella/Lu ... 20flop.PDF

Ma ci sono altre fonti:
www.dis.uniroma1.it/~alberto/did ... /2c_CE.pdf
www.play-hookey.com/digital/rs_nand_latch.html
www.play-hookey.com/digital/cloc ... latch.html
--> web-disco.disco.unimib.it/archit ... lip_fl.htm

In particolare da quest'ultima sembra che la soluzione che ho proposto è appunto la costruzione di un FF JK a partire da un RS....
Comunque... ci sono n modi di risolvere il problema. Nessuno chiedeva di usare il minor numero possibile di componenti o di minimizzare le tempistiche per cui vanno bene tutte.

Si prega Accedi o Crea un account a partecipare alla conversazione.

Di più
17 Anni 8 Mesi fa #67253 da Massimiliano Bontempi
Vi posto due pezzi di codice che fanno la stessa cosa in due modi diversi.... è una banale printf.... li prendo dal disassemblaggio di un eseguibile quindi funzionano.

Problema: in una libreria asm che ho scritto il primo codice va bene, il secondo non riesco a farlo funzionare.... Vi è capitato anche a voi? qualcuno sa perché?
	.section	.rodata
	.align 4
.LC2:
	.string	"i = %03d , addr = %p ,\t valore = %d,\t valore = %p\n"
	.data
	.align 4
	.type	myString, @object
	.size	myString, 4
myString:
	.long	.LC2
------------------------------------------------- OMISSIS
	... omissis passaggio parametri .....
	movl	DumpString, %edx
	movl	%edx, (%esp)
	call	printf
	.section	.rodata
.LC3:
	.string	"----- eccomi -----"
	.text
	.type	FUNCT, @function
FUNCT:
	pushl	%ebp
	movl	%esp, %ebp
	subl	$24, %esp
	movl	$.LC3, (%esp)
	call	printf

Si prega Accedi o Crea un account a partecipare alla conversazione.