1. Registers

Does anyone know that these e?? registers are? Like eax, and edx. Are
these significant to Win32 and DOS32? Can i still call functions using
the old ax,bx,cx, and dx registers? Can I use eax,ebx,ecx, and edx like i
do with ax,bx,cx, and dx?

                                                 JARS OF CLAY ROCKZ FOR
GOD
_________________
"When it comes to programming languages, Eu™ by RDS®™©(did i forget an
®?) is a cut above" - Matt1278 and Prezsoft
Webbers: <A HREF="mailto:softprez at juno.com">softprez at juno.com</A>,
president of SoftCo.® Uh, no slogan at the moment™
        Go out and get Euphoria™ by Rapid Deployment Software® NOW!!!

new topic     » topic index » view message » categorize

2. Re: Registers

Hello all, its been quite a while since I had anything to say.
In the older intel microprocessors (everything up to and inculding the
     286), the microprocessor could only deal with 16 bits at a time.  The ax, bx, cx,
     dx, di, si, and so forth are all 16 bit registers.  Beginning with the 386 (yea!
     my computer!) the registers were Expanded (hence the e- in front of the name) to
     32 bits.
Now the tricky part comes in when you work with both the 32 bit and 16 bit
     registers.  Because they are not completely independent.  The EAX register has 16
     high order bits, then the lower 16 are those in the AX register.  This is similar
     to the deal with AX being composed of AH and AL.  The numbers can be manipulated
     seperately, but changing AL has an effect on AX.
     For example:
        mov ax, 5 ;high order 0, low 5 -- al now equals 5
        mov al, 3 ;sets low order bite of ax to 3 -- so ax is now equal to 3

mov eax, 0FFFF0000h ;sets high half of eax to FFFF but clears lower half
        (ax) so ax is now equal to 0
mov ax,0FFFFh ;sets ax (lower half of eax) to FFFF.  Following this
        example, eax is now FFFFFFFF.

Kinda makes you just love the clarity that high level languages such as
     Euphoria provide, doesn't it?  But it does allow for some interesting tricks: 
     swapping of the lower half of the eax and ebx registers is the same as swapping
     the ax and bx registers... ie: xchg ax, bx
The continued support for the old 16-bit registers as subsets of the
     expanded registers is what lets old 16-bit programs continue to run.  Hope this
     helps.
                              - Robert McDougal


Free web-based email, Forever, From anywhere!
http://www.mailexcite.com

new topic     » goto parent     » topic index » view message » categorize

3. Re: Registers

I have a Pentium 133MHz(a little out dated, i know) and a 486DX/66MHz.
Thanx Rob!!!

P.S. Since DEBUG doesn't support the e- registers, how do i know the
codes for using the e- registers.
                                                 JARS OF CLAY ROCKZ FOR
GOD
_________________
"When it comes to programming languages, Eu™ by RDS®™©(did i forget an
®?) is a cut above" - Matt1278 and Prezsoft
Webbers: <A HREF="mailto:softprez at juno.com">softprez at juno.com</A>,
president of SoftCo.® Uh, no slogan at the moment™
        Go out and get Euphoria™ by Rapid Deployment Software® NOW!!!

new topic     » goto parent     » topic index » view message » categorize

4. Re: Registers

I think that there is a list of the registers and Interrupts that Win95 and
WinNT use at http://msdn.microsoft.com in the DDK or Device Driver Kits for
these OS's respectively.  Also there is a great book that I used to own
called Programming MSDOS which had every register in which MSDOS used even
the undocumented ones.  I think that this is the proper name for the book if
I get a chance I will try to look it up and post a ISBN with author and the
full name of the book.  It is a real good book with lots of insight into the
way processors communicate with the rest of the hardware.  It also listed
all the interrupts for each version of MS-DOS from 3.3 to 6.21...

See Ya on the Net!
JKinsey

> -----Original Message-----
> From: Euphoria Programming for MS-DOS
> [mailto:EUPHORIA at LISTSERV.MUOHIO.EDU]On Behalf Of Matt Z Nunyabidness
> Sent: Saturday, October 17, 1998 12:57 AM
> To: EUPHORIA at LISTSERV.MUOHIO.EDU
> Subject: Registers
>
>
> Does anyone know that these e?? registers are? Like eax, and edx. Are
> these significant to Win32 and DOS32? Can i still call functions using
> the old ax,bx,cx, and dx registers? Can I use eax,ebx,ecx,
> and edx like i
> do with ax,bx,cx, and dx?
>
>                                                  JARS OF CLAY
> ROCKZ FOR
> GOD
> _________________
> "When it comes to programming languages, Eu™ by RDS®™©(did i forget an
> ®?) is a cut above" - Matt1278 and Prezsoft
> Webbers: <A HREF="mailto:softprez at juno.com">softprez at juno.com</A>,
> president of SoftCo.® Uh, no slogan at the moment™
>         Go out and get Euphoria™ by Rapid Deployment Software® NOW!!!
>

new topic     » goto parent     » topic index » view message » categorize

Search



Quick Links

User menu

Not signed in.

Misc Menu