1. |
Re: Paros vagy paratlan? (mind) |
18 sor |
(cikkei) |
2. |
hf : prim (mind) |
20 sor |
(cikkei) |
3. |
Re: Paros vagy paratlan? (mind) |
34 sor |
(cikkei) |
4. |
re: Paros vagy paratlan? (mind) |
15 sor |
(cikkei) |
5. |
SOS c-ben bitek rotalasa!!!!! (mind) |
73 sor |
(cikkei) |
6. |
Re: Paros vagy paratlan? (mind) |
33 sor |
(cikkei) |
7. |
re: paros, paratlan (mind) |
15 sor |
(cikkei) |
8. |
Re: Paros vagy paratlan (mind) |
24 sor |
(cikkei) |
9. |
Re: MFC - ODBC (mind) |
15 sor |
(cikkei) |
10. |
Re: paros vagy... (mind) |
20 sor |
(cikkei) |
11. |
paros? (mind) |
17 sor |
(cikkei) |
12. |
Re: Paros vagy paratlan? (mind) |
26 sor |
(cikkei) |
13. |
Re: Paros vagy paratlan? (mind) |
29 sor |
(cikkei) |
14. |
Re: Paros vagy paratlan? (mind) |
9 sor |
(cikkei) |
15. |
Re:Paros vagy paratlan? (mind) |
9 sor |
(cikkei) |
16. |
Re: Paros vagy paratlan? (mind) |
26 sor |
(cikkei) |
|
+ - | Re: Paros vagy paratlan? (mind) |
VÁLASZ |
Feladó: (cikkei)
|
On 24 Mar 98 at 9:46, Kovács Antal > wrote:
> Hi Coders!
Helo!
> ASM progiban egy szamrol hogyan lehet eldonteni, hogy
> paros vagy paratlan?
test Number,1
jnz @hamis
@igaz:
Mukodik elojelesre is.
István
-- Istvan Marosi -- http://www.sch.bme.hu/~marosi --
-- Recosoft Ltd. -- mailto: --
|
+ - | hf : prim (mind) |
VÁLASZ |
Feladó: (cikkei)
|
Hi Coders!
Part 1:
Lattam szeretitek a hazifeladato(ka)t (lotto) kalakaban megoldani.
Most en szeretnek egy hf feltenni:
Tantacsi (ill. T. Tanar Ur) feldobalozta azt a kellemetes problemat,
hogy irjunk egy olyan (de olyan) programot ami benyel egy szamot
es a rakovetkezo primet kiirja. Tehat az igazi problema a primszamolas.
Feltetelek:
1. Negativra, 0-ra false; 1, 2, 3-ra true. Definicio szerint az 1 nem prim!
2. Longint tartomany (nem szukseges ha valakinek van 64bites gepe:)
3. Pascalba agyazott ASM END (nem muszaj de a kenyelem ...)
Igaz irtam mar egyet :) de hatha masnak gyorsabb a progija .
Tesztelesnek pl. a 2147483647 tokkeletesen megfelel de jo a 2147483629 is!
Igazabol a for -1 to 1000000 do ... ra gondoltam.
udv: XiX
-=- -=-
-=- Minden masodik szavam hazugsag -=-
|
+ - | Re: Paros vagy paratlan? (mind) |
VÁLASZ |
Feladó: (cikkei)
|
Kedves Lista!
> ASM progiban egy szamrol hogyan lehet eldonteni, hogy
> paros vagy paratlan?
> Lehetoleg minnel kevesebb regiszterrel (es ha mod van ra
> minnel gyorsabban).
> Ami jo lenne: AX megmaradjon!
Ajanlom az AND-et...
AND Memory, 1
jz @paros
paratlan:
Udv From:, az trivialis
Ui:
ASM
mov ax, Number
shl ax, 1
jnb @Hamis
{jmp @Igaz}
@Igaz ...
...
@Hamis ...
END;
Ez viszont nem is jo. Tudtommal SHL balra forgat. Eredmenyekent a
szam bizonyosan paros lesz! :-) En az SHR-el probalkoznek...
Esetleg egy ROR utani jnc (ekkor paros, jc paratlan), majd ugras utan
ROL. Ehhez bizonyos perverzio is kell! ;-)
|
+ - | re: Paros vagy paratlan? (mind) |
VÁLASZ |
Feladó: (cikkei)
|
>Felado : =?Default?Q?Kov=E1cs_Antal?=
>E-mail : [Hungary]
>ASM progiban egy szamrol hogyan lehet eldonteni, hogy
>paros vagy paratlan?
...
>Ami jo lenne: AX megmaradjon!
A test nevu utasitast pont erre talaltak ki !
Tulajdonkeppen egy AND-ot vegez el az operandusokkal, de az eredmenyt nem
tarolja, csak a flageket modositja.
Tehat,
test ax,1
jz paros
paratlan:...
A'kos
|
+ - | SOS c-ben bitek rotalasa!!!!! (mind) |
VÁLASZ |
Feladó: (cikkei)
|
Sziasztok!
SOS kellene a suliba egy c-ben irodott bit forditas, rotalas.
Idaig jutottam, de mindenkeppen ezt kellene tovabb irni,commentezve!!!
main(void)
{
long p,h,c,d;
int r;
c=getbin();
printf("\n Decimálisan : %d",c); /*decimalis kiiratas*/
printf("\n Binárisan : ");
putbin(c); /*binaris kiiratas*/
printf("\n\nMennyivel szeretne a szamot jobbra/balra rotalni ? :");
r=getbin();
putbin(fordj(c,r)); /*a regi kiiratasa*/
printf("\n");
putbin(fordb(c,r)); /*az uj kiiratasa*/
printf("\n\nMettol szeretne megforditani a szamot ? :");
p=getbin();
printf("\nMennyi bitet szeretne forditani ? :");
h=getbin();
invert(c,p,h);
return 0;
}
putbin(num)
{
unsigned int mask = 0;
mask = ~((~mask)>>1);
do
{
printf("%c",mask & num ? '1' : '0' );
} while(mask = mask >> 1);
}
fordb(unsigned int c,int r)
{
unsigned mask;
int f,i;
f=c;
mask=0;
mask=~((~mask)>>1);
for(i=0;i<=r;i++)
{
if((c&mask)!=0) f=(f<<1)|1; else f=f<<1;
}
return(f);
}
fordj(unsigned int c,int r)
{
unsigned mask;
int f,i;
f=c;
mask=0;
mask=~((~mask)>>1);
for(i=1;i<=r;i++)
{
if((c&i)!=0) f=(f>>1)|mask; else f=f>>1;
}
return(f);
}
invert(int a,int p,int h)
{
unsigned mask;
int f,j,i;
j=mask=0;
mask=~((~mask)>>1);
for(i=0;i=h;i++)
{
j=j|mask;
j=j>>1;
}
for(i=1;i<=p-1;i++) j=j>>1;
f=a^j;
putbin(f);
}
|
+ - | Re: Paros vagy paratlan? (mind) |
VÁLASZ |
Feladó: (cikkei)
|
On Tue, 24 Mar 1998, [Default] Kovács Antal wrote:
> ASM progiban egy szamrol hogyan lehet eldonteni, hogy
> paros vagy paratlan?
> Lehetoleg minnel kevesebb regiszterrel (es ha mod van ra
> minnel gyorsabban).
mov ax,Number
test ax,1
jnz Paratlan
Paros:
Paratlan:
Szerintem eleg gyors es az AX megmarad...
Meg az AX-et is ki lehet hagyni ha kozvetlenul memoriaban csinalod a
tesztet (csak arra kell figyelni, hogy jo szegmensprefixet tegyel ele,
ami pedig a compilertol fugg).
pl.
test word ptr ds:[Number],1
jnz BlaBla
- Dyce
---[ Erdelyi Gergely ]------------------------------------------------------
Student of Informatics | +-=[ Linux ]=-+ |
University of Veszprem | |_____________| | ond.jupiter.vein.hu/~dyce
|
+ - | re: paros, paratlan (mind) |
VÁLASZ |
Feladó: (cikkei)
|
Sza!
A paros vagy paratlan dologra egy megoldas :
asm
test ax,1
jnz @paratlan
@paros: .
.
.
end;
Udv : Deme
... , aki majdnem legyozte a sarkanyt!
|
+ - | Re: Paros vagy paratlan (mind) |
VÁLASZ |
Feladó: (cikkei)
|
Hello Coderek!
kerdezte tegnap:
>ASM progiban egy szamrol hogyan lehet eldonteni, hogy
>paros vagy paratlan?
>Lehetoleg minnel kevesebb regiszterrel (es ha mod van ra
>minnel gyorsabban).
>Ami jo lenne: AX megmaradjon!
Az en megoldasom:
TEST Number,1
JZ
:
...
:
...
Ez a flageken kivul semmit nem valtoztat meg.
Udv!
Emze
----
MailTo:
|
+ - | Re: MFC - ODBC (mind) |
VÁLASZ |
Feladó: (cikkei)
|
nem kell dsn-el szorakozni (amugy gondolom kell a .dsn kiterjesztes is).
1. vagy masodik param OpenEx-nel
CDatabase::noOdbcDialog Do not display the ODBC connection dialog box,
regardless of whether enough connection information is supplied.
2. ird be a dsn tartalmat a konnekt str-be, pl: (pl egy sql server tablara)
"ODBC;DRIVER={SQL
Server};SERVER=***.***.***.***;UID=*****;PWD=******;DATABASE=*****"
ja csillagokat helyettesitsd :)
csaba
|
+ - | Re: paros vagy... (mind) |
VÁLASZ |
Feladó: (cikkei)
|
Tue, 24 Mar 1998 20:06:14 EST
>E-mail : [Hungary]
>Temakor: Paros vagy paratlan? ( 23 sor )
>Idopont: Tue Mar 24 09:46:35 EST 1998 CODER #58
>- - - - - - - - - - - - - - - - - - - - - - - - - - - -
>
>Hi Coders!
>
>ASM progiban egy szamrol hogyan lehet eldonteni, hogy
>paros vagy paratlan?
>Lehetoleg minnel kevesebb regiszterrel (es ha mod van ra
>minnel gyorsabban).
>Az egyem (ill. Borland)
>ASM
> mov ax, Number
test ax,1
jc paros
>-------------------------------------------------------<
Kovacs Karoly ( )
>-------------------------------------------------------<
|
+ - | paros? (mind) |
VÁLASZ |
Feladó: (cikkei)
|
>- - - - - - - - - - - - - - - - - - - - - - - - - - - -
>>
>>Hi Coders!
>>
>>ASM progiban egy szamrol hogyan lehet eldonteni, hogy
>>paros vagy paratlan?
>>Lehetoleg minnel kevesebb regiszterrel (es ha mod van ra
>>minnel gyorsabban).
>>Az egyem (ill. Borland)
>>ASM
>> mov ax, Number
>test ax,1
>jc paros
hulye kovacs; jz paros
>-------------------------------------------------------<
Kovacs Karoly ( )
>-------------------------------------------------------<
|
+ - | Re: Paros vagy paratlan? (mind) |
VÁLASZ |
Feladó: (cikkei)
|
Sziasztok...
Azt hiszem van egy otletem:
...
mov ax,NUMBER
test ax,1
jz @paros
jnz @paratlan
...
On Tue, 24 Mar 1998, [Default] Kovács Antal wrote:
>ASM progiban egy szamrol hogyan lehet eldonteni, hogy
>paros vagy paratlan?
>
>Ami jo lenne: AX megmaradjon!
Nos, kivansagod a procinak paracs.
Egyebkent javasolom neked a Kovacs Magda 32 bites mikroprocesszorok cimu
konyvet, abban minden utasitas le vagyon irva ( ki mit csinal).
Valahol le van irva a TEST is ( Ha jol emlekszem: and muveletet vegez a
ket operanduson es ennek megfeleloen allitja be a jelzobiteket, ugy hogy
regiszter memoria nem valtozik (kiveve flag !).
Alex.
|
+ - | Re: Paros vagy paratlan? (mind) |
VÁLASZ |
Feladó: (cikkei)
|
>Hi Coders!
>
>ASM progiban egy szamrol hogyan lehet eldonteni, hogy
>paros vagy paratlan?
>Lehetoleg minnel kevesebb regiszterrel (es ha mod van ra
>minnel gyorsabban).
Tehat szerintem a legjobb:
Once upon a timer... :-)))
mov ax,Number ;2-26 ciklus (cimszamitastol fugg)
rcr ax,1 ;a legkisebb h.erteku bit
C-flagben - 2 órajelciklus
jc _odd ;ha ez egy, akkor -> paratlan -
4 ciklus
_even rcl ax,1 ;csak ax visszaallitasa miatt kell -
2 ciklus
... ;itt van a "paros" eseten
vegrehajtando kod
_odd rcl ax,1 ;szinten ax visszaallitasa - 2
ciklus
... ;"paratlan" kodresz..
The end
A dontes-visszaallitas osszesen 8 orajelciklus. Hasznalt regiszterek szama 2
(ax,flags).
>Ami jo lenne: AX megmaradjon!
Megmaradt.
By:
Robi
|
+ - | Re: Paros vagy paratlan? (mind) |
VÁLASZ |
Feladó: (cikkei)
|
> ASM progiban egy szamrol hogyan lehet eldonteni, hogy
> paros vagy paratlan?
> Lehetoleg minnel kevesebb regiszterrel (es ha mod van ra
> minnel gyorsabban).
> Ami jo lenne: AX megmaradjon!
AND-eld 1-gyel, aztan ugorj a ZERO flag alapjan (elvileg)...
Ghosty
|
+ - | Re:Paros vagy paratlan? (mind) |
VÁLASZ |
Feladó: (cikkei)
|
Sziasztok
Szerintem a TEST utasitassal a leggyorsabb:
test ax,1
jz paros
bye
Juan
|
+ - | Re: Paros vagy paratlan? (mind) |
VÁLASZ |
Feladó: (cikkei)
|
Kovacs Antal wrote in message ...
>Hi Coders!
>
>ASM progiban egy szamrol hogyan lehet eldonteni, hogy
>paros vagy paratlan?
...
>Ami jo lenne: AX megmaradjon!
Szia!
Szerintem legegyszerubb a TEST utasitast hasznalni:
(TEST desc, src : Non destructive AND)
mov ax, Number
test ax, 1
jz @paros
{jmp @paratlan}
@paratlan:
...
@paros
...
Igy az AX is megmarad.
Udv.Csaboca.
|