To LUGNET HomepageTo LUGNET News HomepageTo LUGNET Guide Homepage
 Help on Searching
 
Post new message to lugnet.roboticsOpen lugnet.robotics in your NNTP NewsreaderTo LUGNET News Traffic PageSign In (Members)
 Robotics / 25078
25077  |  25079
Subject: 
Re: mindstorms NXT and memory
Newsgroups: 
lugnet.robotics
Date: 
Tue, 10 Jan 2006 15:03:59 GMT
Viewed: 
9404 times
  
In lugnet.robotics, Alexander Sack wrote:
   In lugnet.robotics, Jordan Bradford wrote:
  
   I said that RISC machines (in general) are harder to program in machine code. The ARM is as easy as any other processor to program in high level languages.

Do you mean machine code (binary) or assembly language?

There the same.

Obviously you’ve not coded in machine language, or you’d know they are not.

  
   I first learned assembly language programming on a MIPS chip (RISC). I’ve also done it on a Motorola 68HC11 (a microcontroller), and I’ve written both pure machine code and assembly language for the Intel 8086. I much prefer the MIPS processor, followed by the 68HC11, and dead last is any Intel x86 chip. Bleah.

For machine code, pretty much any chip is “hard” to program.

I guess my last post didn’t make it.

Fundamentally, Steve is correct that RISC is typically more complex to program since it uses less general purpose registers and more complex instructions (it tries to do more per clock tic than CISC).

You misunderstand RISC and CISC. CISC instructions often combine data memory references with arithmetic, logical, or brach capabilities. RISC machines do not. RISC instructions try to do *less* per clock tick, thus the instructions take less logic, and can run *faster*.

Typically RISC instructions are simpler than CISC instructions. Often RISC architectures separate memory related instructions from arithemtic, logical, branch or other miscelaneous instructions. RISC machines typically have many more registers than a CISC machine. The SPARC machines that Sun makes (RISC) gives you 31 general purpose registers which can be used for address or data. Compare this with the 68000 CISC where you get 8 address and 8 data.

The reason that folks think RISC is more complex to program is that it typically takes a few RISC instructios to emulate a CISC instruction. I don’t find it more or less difficult, just different. I’ve done assembly on 8080, 8085, 8086, 80286, IMB 360, IBM370, IBM 390, 6502, 6800, 6811, 68000(all CISC), as well as SPARC, and soon to be ARM7 (RISC). I find the orthoginality of RISC instruction sets much nicer than the redundancy of CISC machines. Having worked on simulation of future CISC and RISC products from the gates up, I find RISC a much better machine design.

I’ve programmed a bit of machine code on IBM 370. What a pain.

   However, these days, the lines between CISC and RISC are pretty much gone (Intel’s execution unit is RISC based converting the assembly you write into micro-ops). Moreover, both ARM and MIPS are extrememly well documented and understood so as many have stated, programming even at the assembly level is not hard. The real issue with assembly is typically the hand building of the final binary (with custom linker layout files which can get real complicated depending on the architecture and complexity of the program).

In most cases the toolsets are easy to come by these days thanks in large part to GNU.

  
-aps

Kev



Message has 1 Reply:
  Re: mindstorms NXT and memory
 
(...) If you are talking about the actual 1's and 0's that represent machine code then you are correct and I misinterpreted your last post, i.e. the binary. When people speak of binaries they are usually referring to something like an executable (...) (18 years ago, 10-Jan-06, to lugnet.robotics, FTX)

Message is in Reply To:
  Re: mindstorms NXT and memory
 
(...) There the same. (...) I guess my last post didn't make it. Fundamentally, Steve is correct that RISC is typically more complex to program since it uses less general purpose registers and more complex instructions (it tries to do more per clock (...) (18 years ago, 10-Jan-06, to lugnet.robotics, FTX)

223 Messages in This Thread:
(Inline display suppressed due to large size. Click Dots below to view.)
Entire Thread on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact

This Message and its Replies on One Page:
Nested:  All | Brief | Compact | Dots
Linear:  All | Brief | Compact
    

Custom Search

©2005 LUGNET. All rights reserved. - hosted by steinbruch.info GbR