English | Magyar
JS ki | CSS ki | Ékezetek ki | HiContrast
Lapozó:  (0 - 1424) 
<== | ==>
Ugrás a végére | Összes megjelenítése | Utolsó oldal
OpenOpera patches | Opera-SSL patches | Opera 12.15 source (Git repository) | Opera 12.15 source (Torrent) | Opera internal pages | Otter Browser Linux x64 - Qt5.15.2/QtWebKit5.602.1 (2024.04.27. 20:05)
OS for MC680x0 | OS for PPC | OS for Sparc64 | besztofbégéaefcé | CSÉNDZSLOG | WebToolz | DDG Shit Filter | Google Shit Filter | Progz | Fast CSS Box | Browser | OS | Agent | Statisztika | BBCode
Monospace font-family: Courier New | Browser default monospace
Email értesítő / Email notification ===> 
Keresés
Σ: 10 post

Gab09  (statz) Jobbfasz
#13, Jobbfasz (99)
671 | #1c42 | ^ | Idézet | Tue, 01 May 2012 20:01:54 +02
145.236.*.* Unknown Unknown Hungary *.pool.t-online.hu
Helló.....
Lenne egy kérdésem...
Assemblyvel hogy állnak az úriemberek?
Mert én úgy hogy: "Én nem baszogatom őt.. őse baszogasson engem..
Hát sajnos ez nem így van.... Ugyanis baszogatnak vele.
Értelmezni tudom a Assembly-t de írni... az valamiért nem megy.
A következő a feladatom.
N számig (A szám bekérése megtörtént) kell kiíratni a prímszámokat.. (kiíratással se lesz gond,)
Lényegébe amivel gondom van, maga az algoritmus, ami megkeresi a prímeket. Nem hiszem hogy olyan bonyolultnak kell lennie..
1-2 megoldást már találtam, de azok kurvára bonyolultak voltak. és felbasztak. Nagyon.
Valami ötlet?



Remélem tudtok segíteni
Előre is köszönöm.. Na csövi! :D


kemi  (statz) Főfasz
#2, Főfasz (2970)
342 | #1c43 | ^ | Idézet | Tue, 01 May 2012 22:12:08 +02
77.234.*.* Unknown Unknown Hungary *.pool.digikabel.hu
Felírod a természetes számokat 1-től N ig, megkeresed az első valódi prímet, az a 2, kihúzod a többszöröseit, majd megkeresed az első számot amit nem húztál ki, az a 3, annak is kihúzod a többszöröseit, és így tovább, a végére csak prímek maradnak. Hogy ezt hogy programozod le asmben fingom sincs, :P de ez az egyik legegyszerűbb algoritmus.


saxus  (statz) Agyfasz
#9, Agyfasz (419)
1328 | #1c44 | ^ | Idézet | Tue, 01 May 2012 22:48:51 +02
84.3.*.* Unknown Unknown Hungary *.catv.pool.telekom.hu
TCH írta/wrote:
Ja, bilgéc beengedte a sok oda nem való faszt a számtech világba és azóta hw/sw terén is a quantity over quality mentalitás dominál.


Jaj, ez a bilgéc szöveg. Azt hiszem, vitáztunk párszor arról, hogy az IT kinőtt abból, hogy pár szakálas emberke az egyetemekben játszadozzon néhány(száz) talicskányi tranzisztorral, hanem jelenleg az van, hogy sok más ipart szolgál ki. Azoknak meg vannak igényeik, mondjuk, hogy X időn belül. És amikor képbe kerül a gazdaságosság is, akkor már meggondolja az ember azt, hogy elpicsogjon valami olyannal, amit
a) fordító megcsinál jobban
b) olcsóbb alárakni még ramot, cpu-t, vasat.

Pl. fejlesztesz egy programot mondjuk 3 hónapig 3*Y összegért és kell egy Y értékű gép a futtatásához. Termel mondjuk n*Z hasznot. Jön a konkurencia, összebassza 1 hónap alatt, legyen mondjuk 2*Y összegért és kell alá 2*Y összegű gép. Termel mondjuk 2*n*Z hasznot, mivel időben kijöttek vele és ráadásul a konkurencia előtt.

Vagy a másik eset: kell valami promócióhoz valami szutyok, amelyet használnak mondjuk egy hónapig, hozhat mondjuk 300000 hasznot. Összebaszva mondjuk 100000 hufnyi fejlesztői óradíj, normálisan megcisnálva mondjuk 350000. Szerinted megéri? :)

Itt, ahol most dolgozok meg nagyon kijön az, hogy lépéselőnyben vagy-e vagy sem.


TCH  (statz) Főfasz
#1, Főfasz (10443)
6863 | #1c45 | ^ | Idézet | Wed, 02 May 2012 00:41:16 +02
46.107.*.* Unknown Unknown Hungary *.catv.pool.telekom.hu
Gab:
(kemi felhívta a figyelmem a kettő prím(itív)ségére, nekem meg eszembe jutott még 1-2 dolog, ezeket lekezeltem, szóval, ha már tegnap elvitted az algoritmust, akkor frissiccsé'. :])
Az sem rossz, amit kemi mondott, de ahhoz tömbökkel kell baszakodni, én itt inkább az egyesével végignézést javasolnám. Ami úgy néz ki, hogy megnézed, hogy a szám páros-e, ha igen, akkor eldobod, ha nem, akkor 3-tól kezdve maradékosan elosztod minden páratlan számmal, egészen a gyökéig. Vagy a feléig, ha nincs lebegőpontosod. (Ha nincs maradék, eldobod a számot.)
Na, most mivel gondolom, hogy azért, hogy prímeket keress - ráadásul assemblyben - a kutya nem fizet, vagyis ez egy ostoba egyetemi feladat, mert ugye programozni az tud, aki jó matematikus (aha, persze), az egyetemen pedig only 16 bites és FPU mentes sux86-ot okítanak, vagyis a 8087-es FPU utasításkészletében lévő FSQRT gyökvonót kihagyjuk.
Ne felejtsd, az iskola az életre készít fel, ott neked mindig prímeket kell keresned (vagy valami más ostoba matekpéldát megoldanod) és mindig valami őscsótány technológiával (QBasic, Turbo Pascal vagy 8086 assembly), mert ez a versenyképes tudás. Prímkeresés DOS alatt. Thumb up magyar közoktatás.
De itt a kód, használd egész seggel. (Vö. kitörölheted vele)
; kemi felhivta a figyelmem, hogy van egy paros primszam is a ketto
; es akkor mar eszembe jutott, hogy 4 alatt minden prim, kiveve a nulla
; beleraktam ezt is, meg a kiszallokodot minek tobbszor belerakni

; a prchk szubrutin dx-ben varja a szamot, amit vizsgalni fog
; es a dl-ben fogod az eredmenyt visszakapni, ami 0, ha nem prim
; meghivasa ugy nez ki, hogy:

; MOV DX, 12345
; CALL @PRCHK
; OR DL, DL
; JZ @NEMPRIM
; JMP @PRIM

; nem tom, hogy milyen assemblert hasznalsz, de lehet,
; hogy a cimkek ele nem kell a @ jel

@PRCHK:	PUSH BX
	MOV BX, DX

; azzal nyitunk ki kell menteni a szamunkat valahova, (mondjuk a bx-be)
; mert a sux86 egy fos es 16 bitesen osztani csak ugy lehet, hogy a forras
; a dx-ben es ax-ben van, dx a felso 16 bit (ami itt 0 mindig, sux86 rulez)
; es az ax az also 16 bit, vagyis kell mindket regiszter + egy harmadik
; a dx tehat mindig 0 lesz, az ax mindig a szamunk, az oszto pedig cx lesz

; a bx pedig nemely esetben hasznalt regiszter vagyis hasznalat elott ki kell
; menteni, visszatereskor pedig visszahuzni

; itt jon negyesre valo vizsgalat osszehasonlitjuk a szamot harommal
; es ha egyenlo vagy kevesebb, akkor akkor ket eset lehet
; ha nulla akkor nem prim es mivel dl-ben mar nulla van kiszallunk
; ha nem nulla, akkor 1, 2 vagy 3 es prim es dl-ben nem 0 van, vagyis exit

	CMP DX, 3
	JNG @EXIT

; aztan is megvizsgaljuk, hogy paros-e a szam
; 0 & 1 == 0, 1 & 1 == 1, vagyis ha X & 1 == 1
; akkor X == 1, de ha nem, akkor 0 es ha egy szam
; legalso bitje 0, akkor a szam paros es nem prim

; egyszoval, ha a logikai es muvelet utan ha dx-ben nulla van
; akkor kiszallunk, dl-ben (a dx also feleben) mar igy is nulla van
; vagyis csak visszahuzzuk a bx-et es return
; ha nem nulla, akkor paratlan es tovabb

	AND DX, 1
	JZ @EXIT

; ha ide bejott a program, akkor paratlan volt
; az oszto a cx lesz, ami 3-tol indul es a szam feleig megy
; (nem full feleig, hiszen paratlan, szal floor(x/2))

	MOV CX, 3

; dx-be nulla kerul
; xor azaz kizaro vagy, onmagaval kapcsolatba hozva mindig 0
; XOR DX, DX gyorsabb es kevesebb helyet eszik, mint MOV DX, 0

; az ax-ben a szam van

; osztas utan az ax tartalmazza a hanyadost, dx a maradekot
; ha dx, azaz a maradek 0, akkor cx-ben egy olyan szam van
; ami maradek nelkuli osztoja az eredeti szamnak, vagyis
; bx-ben nem prim szam van

@CHK:	XOR DX, DX
	MOV AX, BX
	DIV CX

; szoval, ha dx-ben a muvelet utan nulla van, akkor visszaterunk
; a mar ismert modszerrel, csak itt nem csak a legalso bitet vizsgaljuk
; ha meg nem, akkor cx-hez adunk 2-t, mert csak a paratlan szamokat vizsgaljuk

	TEST DX, DX
	JZ @EXIT
	ADD CX, 2

; itt most ellenoriznunk kell, hogy az oszto nagyobb-e,
; mint az eredeti szam fele
; 2 hatvanyaival ugy osztunk vagy szorzunk, hogy a regisztert annyival
; forgatjuk jobbra (osztas) vagy balra (szorzas) ahanyadik hatvanyaval
; osztunk vagy szorzunk kettonek
; x*2^n == shl x, n
; x/2^n == shr x, n
; vagyis x/2^1 == x/2 == shr x, 1

; ha az oszto nagyobb a szam felenel, akkor a vizsgalt szam prim
; dl-be 255 kerul es visszaterunk
; ha nem, akkor folytatjuk a futast
; cmp utan a jg akkor teljesul, ha az elso parameter volt nagyobb
; (a jng meg akkor ha a masodik, vagy ha egyik sem)

	MOV AX, BX
	SHR AX, 1
	CMP AX, CX
	JG @CHK
	MOV DL, 255
@EXIT:	POP BX
	RET

; hat ennyi
; nem teszteltem, de elvileg nem kene, hogy gaz legyen vele
És kommentek nélkül a teljes kód ismét:
@PRCHK:	PUSH BX
	MOV BX, DX
	CMP DX, 3
	JNG @EXIT
	AND DX, 1
	JZ @EXIT
	MOV CX, 3
@CHK:	XOR DX, DX
	MOV AX, BX
	DIV CX
	TEST DX, DX
	JZ @EXIT
	ADD CX, 2
	MOV AX, BX
	SHR AX, 1
	CMP AX, CX
	JG @CHK
	MOV DL, 255
@EXIT:	POP BX
	RET
saxus írta/wrote:
Jaj, ez a bilgéc szöveg. Azt hiszem, vitáztunk párszor arról, hogy az IT kinőtt abból, hogy pár szakálas emberke az egyetemekben játszadozzon néhány(száz) talicskányi tranzisztorral, hanem jelenleg az van, hogy sok más ipart szolgál ki. Azoknak meg vannak igényeik, mondjuk, hogy X időn belül.
Egyfelől, régen is kiszolgált az infoipar sokmindent - nem csak szakállas faszok baszakodtak a tranyókkal - másfelől meg a balfaszokat kár volt beengedni az IT szakmába, harmadfelől meg ezt a mentalitást, hogy arra van igény, hogy nem baj, hogy szar, csak gyorsan meglegyen, hogy el tudjuk adni a balfaszoknak - ezt bilgécnek köszönhetjük, mert ő engedte be a balfaszokat, hogy legyen kit fejni, mert bilgéc nem haladást akart, hanem pénzt. (Milyen érdekes, hogy anyja-apja bankár, vajh honnan örökölt ilyen hajlamokat?)
saxus írta/wrote:
a) fordító megcsinál jobban
Vagy sem. Te megbíznál a GCC-ben? Költői kérdés volt.
saxus írta/wrote:
b) olcsóbb alárakni még ramot, cpu-t, vasat.
Éljen a környezetszennezés és az eszeveszett pazarlás környezetbarát gondolkodás és a takarékosság. Fillérekér' van, vegyünk még alá vasat, nincs elég szemét még, támogassuk, a trassh 4 da mass mozgalmat, bazdmeg!
saxus írta/wrote:
Termel mondjuk n*Z hasznot.
saxus írta/wrote:
Termel mondjuk 2*n*Z hasznot
Termelésről, haszonról, virtuális tőkéről és értéktelen szemét értékesítéséről most ne nyissunk vitát. Ne érts félre, értem amit mondasz és azt is tudom, hogy abban igazad van, hogy ez így megy. És azt is tudom, hogy felesleges lázadnom ellene.

Nade, elhinnem, hogy ez így jó és szeretni, pláne terjeszteni mint igét...hát had ne kelljen mán!


kemi  (statz) Főfasz
#2, Főfasz (2970)
677 | #1c46 | ^ | Idézet | Wed, 02 May 2012 07:22:22 +02
188.143.*.* Unknown Unknown Hungary *.pool.digikabel.hu
saxus írta/wrote:
a) fordító megcsinál jobban
Na így lesznek aztán programozók helyett gányolók. Nem baj, majd a náluk okosabb compiler kioptimalizálgat.
saxus írta/wrote:
b) olcsóbb alárakni még ramot, cpu-t, vasat.
Hát persze, tegyünk alá vasat, nincs elég szemét. Lassan külön blu-rayen kell terjeszteni a notepadot, és 4 giga ram kell hozzá, de nembaj van alatta vas. Olcsóbb dagasztani, mint takarékoskodni az erőforrással. Mikrofos mentalitás. Így jutottak el a vistáig, ami be is bukott.
TCH írta/wrote:
megnézed, hogy a szám páros-e
Akkor a 2-t is eldobod, és a 2 prím.


TCH  (statz) Főfasz
#1, Főfasz (10443)
1179 | #1c47 | ^ | Idézet | Wed, 02 May 2012 11:01:55 +02
46.107.*.* Unknown Unknown Hungary *.catv.pool.telekom.hu
kemi írta/wrote:
Na így lesznek aztán programozók helyett gányolók. Nem baj, majd a náluk okosabb compiler kioptimalizálgat.
Jaja.
kemi írta/wrote:
Lassan külön blu-rayen kell terjeszteni a notepadot
XDDDDDDDDDDDDDDDDDDDDDDDDDDDDDDD
Hát ez a hét beszólása geci. XD
kemi írta/wrote:
Mikrofos mentalitás. Így jutottak el a vistáig, ami be is bukott.
Szívemből (van nekem olyan?) beszélsz. :)
kemi írta/wrote:
Akkor a 2-t is eldobod, és a 2 prím.
Hoppáré jogos. De a párosságot mindenképpen vizsgálni kell, mert ha páros, akkor már nem lehet prím, kivéve a kettőnél, de imho azt felesleges is belerakni az algoritmusba. Előtte meg lehet vizsgálni
	CMP DX, 2
	JZ PRIM
	CALL PRCHK
és ha 2, akkor prím, ha nem, akkor hívhatjuk a rutint.
Sz*rk: Eszembe jutott, hogy igazából 4 alatt minden prím, szóval azokat két sorból le lehet kezelni rutinon belül, így 1-3 ig lekezeltem. És az is eszembe jutott, hogy a nulla nem prím, mert mindennel osztható, ezt is lekezeltem. Így már érdemes rutinba berakni, kösz, hogy felhívtad a figyelmemet. :)


kemi  (statz) Főfasz
#2, Főfasz (2970)
198 | #1c48 | ^ | Idézet | Wed, 02 May 2012 18:26:17 +02
188.143.*.* Unknown Unknown Hungary *.pool.digikabel.hu
TCH írta/wrote:
nulla nem prím, mert mindennel osztható
A nulla semmivel se osztható, de nem prím. De a 0 ne érdekeljen minket, kezdjük 1-től az algoritmust.


TCH  (statz) Főfasz
#1, Főfasz (10443)
259 | #1c49 | ^ | Idézet | Wed, 02 May 2012 19:09:39 +02
89.134.*.* Unknown Unknown Hungary *.catv.broadband.hu
A nulla mindennel osztható, kivéve önmagával. Vele nem lehet osztani. :)
Az algoritmust meg 3-al kezdem, nem 1-el, mert:
0: semminek sem osztója, ignore.
1: mindennek osztója, ignore.
2: a páros számoknak osztója, páros szám meg nem lehet prím, ignore.


kemi  (statz) Főfasz
#2, Főfasz (2970)
321 | #1c4a | ^ | Idézet | Thu, 03 May 2012 09:19:11 +02
193.224.*.* Unknown Unknown Hungary *.uni-obuda.hu
Amúgy ja, magyar felsőoktatás rulez. Amikor én tanultam assemblyt, winfoshéten futott a DOS-os assembler. Állandóan kidöglött, megelégeltem, és felraktam egy dosboxot az egyik gépre. :P Ha már assembly lehetne x86-64 esetleg mikrokontroller, azzal tényleg használható tudást lehet szerezni, de DOS meg i286? Mi a fasznak?


TCH  (statz) Főfasz
#1, Főfasz (10443)
273 | #1c4b | ^ | Idézet | Thu, 03 May 2012 10:58:47 +02
89.134.*.* Unknown Unknown Hungary *.catv.broadband.hu
kemi írta/wrote:
Amikor én tanultam assemblyt, winfoshéten futott a DOS-os assembler.
Nekünk ikszpén ment, ottisszarvót.
kemi írta/wrote:
de DOS meg i286? Mi a fasznak?
Ehhez van tanár.


English | Magyar
JS ki | CSS ki | Ékezetek ki | HiContrast
Lapozó:  (0 - 1424) 
<== | ==>
Ugrás a végére | Összes megjelenítése | Utolsó oldal
OpenOpera patches | Opera-SSL patches | Opera 12.15 source (Git repository) | Opera 12.15 source (Torrent) | Opera internal pages | Otter Browser Linux x64 - Qt5.15.2/QtWebKit5.602.1 (2024.04.27. 20:05)
OS for MC680x0 | OS for PPC | OS for Sparc64 | besztofbégéaefcé | CSÉNDZSLOG | WebToolz | DDG Shit Filter | Google Shit Filter | Progz | Fast CSS Box | Browser | OS | Agent | Statisztika | BBCode
Monospace font-family: Courier New | Browser default monospace
Email értesítő / Email notification ===> 
Keresés

Név: (max 255 byte)

Email: (max 255 byte) Nem kötelező!

Üzenet: (max 65536 kar.) 65536-0=65536




crap_vkn v4.34.0 by TCH
Thx to saxus for the escaped string decoder function (PHP), the realIP function (PHP) & the SQL handle layer (PHP), to thookerov for the int_divide function (PHP), to Jeff Anderson for the getSelText function (JS), to Alex King for the insertAtCursor function (JS), Flood3r for the new CSS styles, Pety for the spamprotection idea and some design and comfort ideas, MaxMind for the IP2Country database, famfamfam for the flags of countries and an unknown PHP programmer for the removeAccents function.



Kecskebaszók ide!