Welcome, Guest. Please login or register.
Amiga Kit Amiga Store Hollywood MAL AMIStore App Store A600 Memory

AuthorTopic: Assembly future  (Read 1083 times)

0 Members and 1 Guest are viewing this topic.

Offline lorenko

Assembly future
« on: October 27, 2011, 05:19:06 PM »
Hi,
recently I discovered the beauty of 68K assembly language. I'm an hobbiest I made some readings about Intel cpu and 68k cpu. I like it and I think from a newbie pov much interesting the motorola architecture. But the 68k has no future. Which architecture has inherited the characteristics of 680x0? What you see in the future assembly programming?:afro:
 

Offline beakster2

Re: Assembly future
« Reply #1 on: October 27, 2011, 05:22:59 PM »
Hi,

You could look at the ColdFire line of processors as they are a direct descendant of the 68000.

I'd recommend you take a look at the ARM processor too as it seems to be the post popular processor these days, and programming it in assembly language has some very practical uses.  If you have a linux box/vm you can get started programming it with this tutorial and QEMU http://bravegnu.org/gnu-eprog/index.html
 

Offline matthey

Re: Assembly future
« Reply #2 on: October 27, 2011, 06:09:15 PM »
The Natami is attempting to develop the 68k further with ColdFire additions and other improvements in a fpga for now. There is a lot of talented 68k assembly programmers helping with the project and some interesting reading...

http://www.natami.net/

If you just look at the desktop then everything but x86 is dead but it may be that it's the desktop that is dying ;). 68k (including ColdFire and Fido) are mostly used in embedded systems. The StarCore DSP has some similarities to 68k.

Most newer processors have been RISC but they need lots of memory. The more energy efficient RISC processors have come back to a CISC encoding with a RISC core. That's what the 68060 was 17 years ago. It makes more sense to start with a high code density CISC (68k) processor and make improvements than trying to turn a RISC processor with RISC encoding (e.g. ARM) into a RISC processor with CISC encoding. The 68k is much easier to program too. My point is that the 68k fell out of style rather than became completely outdated. That means a comeback is a possibility.
 

Offline lorenko

Re: Assembly future
« Reply #3 on: October 27, 2011, 06:54:13 PM »
Quote from: matthey;665362

It makes more sense to start with a high code density CISC (68k) processor and make improvements than trying to turn a RISC processor with RISC encoding (e.g. ARM) into a RISC processor with CISC encoding. The 68k is much easier to program too. My point is that the 68k fell out of style rather than became completely outdated. That means a comeback is a possibility.


YEAH, I'M WITH YOU :hammer:
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
  • Total likes: 0
    • http://www.iki.fi/sintonen/
Re: Assembly future
« Reply #4 on: October 27, 2011, 06:56:00 PM »
Quote from: matthey;665362
The 68k is much easier to program too. My point is that the 68k fell out of style rather than became completely outdated. That means a comeback is a possibility.

This assessment only applies if writing assembly code would be a requirement (in today's world it really isn't). Which means that any kind of 68k comeback is highly unlikely.
 

Offline matthey

Re: Assembly future
« Reply #5 on: October 27, 2011, 08:43:09 PM »
Quote from: Piru;665364
This assessment only applies if writing assembly code would be a requirement (in today's world it really isn't). Which means that any kind of 68k comeback is highly unlikely.


Of course writing assembly code is not a requirement. Another myth created around the time of RISC is that compilers would get better and better and assembly would become obsolete. What I see though, is many compilers generating worse code or having trouble utilizing the countless optimization techniques they advertise. Many times they can't do basic optimizations correctly. GCC is one of the worst. It's degenerated in speed and code density since version 2. Have you looked at the code that newer versions of GCC generates? Oh yea, probably not since PowerPC assembler code is tedious instead of fun. Remember how much easier debugging and looking at how optimized code was at a glance? Not that PowerPC is bad but readable assembler is almost totally discounted when it's actually very valuable.
 

Offline Zac67

Re: Assembly future
« Reply #6 on: October 27, 2011, 09:36:26 PM »
For development on RISC assembly is hardly usable - manual optimization may be better than a compiler's but you'll be spending eternities on everything but small code fragments. Everything CISC is dead.
 

Offline matthey

Re: Assembly future
« Reply #7 on: October 27, 2011, 10:44:58 PM »
Quote from: Zac67;665412
Everything CISC is dead.


x86 too? While the desktop is dying, I wouldn't say it's dead. It will probably be like the land lines for residential phones where it will lose market share up to a certain point and then mostly stops. If you mean CISC cores are dead, then you are correct. The share of CISC instruction sets with RISC cores is the largest category and on the rise with ARM+Thumb2 and x86. Every RISC instruction set with RISC core processor I can think of is losing market share. Do you know of any gaining market share? I think a 68k+ is easier to program and can have better code density than ARM+Thumb2 and x86. I think it would be competitive and offer advantages if scaled up to todays current technology.
 

Offline Piru

  • \' union select name,pwd--
  • Hero Member
  • *****
  • Join Date: Aug 2002
  • Posts: 6946
  • Total likes: 0
    • http://www.iki.fi/sintonen/
Re: Assembly future
« Reply #8 on: October 27, 2011, 11:01:08 PM »
Quote from: matthey;665388
Of course writing assembly code is not a requirement. Another myth created around the time of RISC is that compilers would get better and better and assembly would become obsolete.

It has become mostly obsolete though. Only if you really must have the very fastest possible code for a certain operation will you bother with hand optimized innerloops.

Quote
What I see though, is many compilers generating worse code or having trouble utilizing the countless optimization techniques they advertise. Many times they can't do basic optimizations correctly. GCC is one of the worst. It's degenerated in speed and code density since version 2.

That's why I mostly use gcc 2. gcc 4 does however create faster code overall. Code density is worse though.

Quote
Have you looked at the code that newer versions of GCC generates? Oh yea, probably not since PowerPC assembler code is tedious instead of fun.

Actually I do, quite often. Tracking down bugs usually requires manual reading of the disassembly.

Quote
Remember how much easier debugging and looking at how optimized code was at a glance? Not that PowerPC is bad but readable assembler is almost totally discounted when it's actually very valuable.

68k of course is much more readable. I do like 68k still of course but I find less and less use for my 68k skills.

Understanding any assembly (even 68k) is a good thing though as it makes it much easier to pick up some other (more relevant) assembly code. The basic concepts are very similar. For example I have no difficulty in using IDA Pro to read some x86 code, even though I probably couldn't write single app using x86 asm.
 

Offline commodorejohn

Re: Assembly future
« Reply #9 on: October 27, 2011, 11:16:04 PM »
Quote from: Piru;665435
Understanding any assembly (even 68k) is a good thing though as it makes it much easier to pick up some other (more relevant) assembly code. The basic concepts are very similar. For example I have no difficulty in using IDA Pro to read some x86 code, even though I probably couldn't write single app using x86 asm.
Knowing assembler is also good, even if you never actually use it, because it gets you to think about what's happening below the HLL statement level. That understanding is a valuable tool even if you never so much as use assembler for optimization.
Computers: Amiga 1200, DEC VAXStation 4000/60, DEC MicroPDP-11/73
Synthesizers: Roland JX-10/MT-32/D-10, Oberheim Matrix-6, Yamaha DX7/FB-01, Korg MS-20 Mini, Ensoniq Mirage/SQ-80, Sequential Circuits Prophet-600, Hohner String Performer

"\'Legacy code\' often differs from its suggested alternative by actually working and scaling." - Bjarne Stroustrup
 

Offline Zac67

Re: Assembly future
« Reply #10 on: October 28, 2011, 07:37:28 AM »
Quote from: matthey;665432
x86 too?


Yes, I was referring to the cores. x86 has been nothing but a frontend to RISC cores for 15 years.
 

Offline persia

Re: Assembly future
« Reply #11 on: October 28, 2011, 01:41:09 PM »
How do Assembly languages handle today's multi-core machines?  Do you have to deal with each core?  It's been couple decades since I did anything in AL...
[SIGPIC][/SIGPIC]

What we\'re witnessing is the sad, lonely crowing of that last, doomed cock.
 

Offline skurk

Re: Assembly future
« Reply #12 on: October 28, 2011, 02:53:55 PM »
Quote from: lorenko;665354
What you see in the future assembly programming?:afro:


In the professional market you may see some use of assembly on micro controllers and DSPs, especially in areas where you need precision down to the clock cycle.

But this is more like the exception to the rule.  From my experience I'd say it's 97% C and 3% assembly.
Code 6502 asm or... DIE!!

[C64, C128, A500, A600, A1200, A3000, MBP+Mini, Efika/MOS2.1, Sam440 w/AOS4.1
 

Offline bloodline

  • Master Sock Abuser
  • Hero Member
  • *****
  • Join Date: Mar 2002
  • Posts: 12113
  • Total likes: 0
    • http://www.troubled-mind.com
Re: Assembly future
« Reply #13 on: October 28, 2011, 03:32:18 PM »
Quote from: lorenko;665354
Hi,
recently I discovered the beauty of 68K assembly language. I'm an hobbiest I made some readings about Intel cpu and 68k cpu. I like it and I think from a newbie pov much interesting the motorola architecture. But the 68k has no future. Which architecture has inherited the characteristics of 680x0? What you see in the future assembly programming?:afro:
Nothing is quite as readable as 68k asm... But ARM is by far the nicest of the modern Asm instruction sets available today. X86-64 is nice too, but I wouldn't bother with Asm on anything as powerful as an x86-64, except for some operating system boot strap etc...