Hollosi Information eXchange /HIX/
HIX CODER 59
Copyright (C) HIX
1998-03-25
Új cikk beküldése (a cikk tartalma az író felelőssége)
Megrendelés Lemondás
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.

AGYKONTROLL ALLAT AUTO AZSIA BUDAPEST CODER DOSZ FELVIDEK FILM FILOZOFIA FORUM GURU HANG HIPHOP HIRDETES HIRMONDO HIXDVD HUDOM HUNGARY JATEK KEP KONYHA KONYV KORNYESZ KUKKER KULTURA LINUX MAGELLAN MAHAL MOBIL MOKA MOZAIK NARANCS NARANCS1 NY NYELV OTTHON OTTHONKA PARA RANDI REJTVENY SCM SPORT SZABAD SZALON TANC TIPP TUDOMANY UK UTAZAS UTLEVEL VITA WEBMESTER WINDOWS