flat assembler
Message board for the users of flat assembler.

Index > Main > []

Author
Thread Post new topic Reply to topic
Spool



Joined: 08 Jan 2013
Posts: 151
Spool 10 Jan 2013, 14:44
[ Post removed by author. ]


Last edited by Spool on 17 Mar 2013, 04:04; edited 2 times in total
Post 10 Jan 2013, 14:44
View user's profile Send private message Reply with quote
shutdownall



Joined: 02 Apr 2010
Posts: 517
Location: Munich
shutdownall 10 Jan 2013, 17:44
It's not efficient to work with 8 bit data and 64 bit addresses.
How would you calculate and how many operations do you want to combine to realize a 64 bit addition or subtraction ? And what about multiplication or division ?

I don't know any 8 bit processor supporting 64 bit address range. It's not handy nor is it necessary. You write yourself you could spare hard disk and memory with 8 bit calculating. So if you spare it, for what do you need 64 bit addresses ?

With 32 bit you can address 4 GB memory. For what the hell do you need about 4 billion pages (!) of 4 GB ?

So I don't understand your approach. There is version of flatassembler for Zilog's 8-bit Z80 CPU. You can try work with that but offers only 16 bit address range / 64 kByte.

Or you explain a bit more detailed what you want to do.
Post 10 Jan 2013, 17:44
View user's profile Send private message Send e-mail Reply with quote
cod3b453



Joined: 25 Aug 2004
Posts: 618
cod3b453 10 Jan 2013, 19:46
There's nothing stopping you from storing 8bit offsets from a 64bit base address and combining them to form the actual address:
Code:
use64

mov rax,0x100000000     ; 64bit base address +0x80 for SX
mov bl,0x80             ; 8bit offset

movzx edx,bl            ; or movsx for sign extended
lea rsi,[rax+rdx]       ; final address    
but I'm not sure if this is what you mean Question
Post 10 Jan 2013, 19:46
View user's profile Send private message Reply with quote
Spool



Joined: 08 Jan 2013
Posts: 151
Spool 27 Jan 2013, 03:51
[ Post removed by author. ]


Last edited by Spool on 17 Mar 2013, 04:45; edited 1 time in total
Post 27 Jan 2013, 03:51
View user's profile Send private message Reply with quote
cod3b453



Joined: 25 Aug 2004
Posts: 618
cod3b453 27 Jan 2013, 13:32
Assuming you only address 64bit values, simply adjust the offset:
Code:
...
lea rsi,[rax+8*rdx]       ; final address    
Question
Post 27 Jan 2013, 13:32
View user's profile Send private message Reply with quote
Display posts from previous:
Post new topic Reply to topic

Jump to:  


< Last Thread | Next Thread >
Forum Rules:
You cannot post new topics in this forum
You cannot reply to topics in this forum
You cannot edit your posts in this forum
You cannot delete your posts in this forum
You cannot vote in polls in this forum
You cannot attach files in this forum
You can download files in this forum


Copyright © 1999-2025, Tomasz Grysztar. Also on GitHub, YouTube.

Website powered by rwasa.