ARM programming languages

Posted on 2011-10-25
Last Modified: 2013-12-13
is the programming language /environment/libraries used in the 3 families of ARM processors(cortex-M,cortex-R and cortex-A) are the same ,i.e. if i learn for example cortex-R programming will i be able to make programs for the other two without relearning a whole new language/environment?

i know they probably will not be identical but ihope at least "upgrading" myself from one to the other  takes a whole lots of learning .
 how much they differ / are similar ?

note that i don't mean code compatibility but rather i don't like picking up books and learning too much ,any links to resources that will help me is highly appreciated.
Question by:docesam2
    LVL 21

    Accepted Solution

    From what research I have been able to do, the base language is the same.  Other languages than just the assembly are supported.  I saw reference to C and Java, there may be others.  I believe that Embarcadero is working on a new compiler that will be capable of compiling to ARM chips.  This would mean Delphi and C++ Builder would be able to handle such compiling in RAD STUDIO XE3(? - not sure of the name as it is not out yet).

    It looks like the main differences have to do with how many pipelines are supported, predictive branching, and I believe I saw mention of some that have more than one core.

    This link shows that a newer version does have basically the same instructions with some new ones added.  It also discusses migrating between the two versions(ARM7TDMI  and Cortex-M3).

    If you are using a language other than assembly then the differences should be taken into account for you (as long as your compiler optimizes for the different versions).
    LVL 8

    Assisted Solution

    There are minor differences between the various ARM processors, but the core instruction set is the same for all versions.  Unless you are doing operating system or system library development, or have very unusual technical requirements, you don't need to be concerned about the differences.

    Almost everything you learn about ARM programming will be applicable to all ARM processors.

    Featured Post

    How to improve team productivity

    Quip adds documents, spreadsheets, and tasklists to your Slack experience
    - Elevate ideas to Quip docs
    - Share Quip docs in Slack
    - Get notified of changes to your docs
    - Available on iOS/Android/Desktop/Web
    - Online/Offline

    Join & Write a Comment

    Whether you've completed a degree in computer sciences or you're a self-taught programmer, writing your first lines of code in the real world is always a challenge. Here are some of the most common pitfalls for new programmers.
    If you’re thinking to yourself “That description sounds a lot like two people doing the work that one could accomplish,” you’re not alone.
    Video by: Grant
    The goal of this video is to provide viewers with basic examples to understand and use nested-loops in the C programming language.
    In this fifth video of the Xpdf series, we discuss and demonstrate the PDFdetach utility, which is able to list and, more importantly, extract attachments that are embedded in PDF files. It does this via a command line interface, making it suitable …

    754 members asked questions and received personalized solutions in the past 7 days.

    Join the community of 500,000 technology professionals and ask your questions.

    Join & Ask a Question

    Need Help in Real-Time?

    Connect with top rated Experts

    21 Experts available now in Live!

    Get 1:1 Help Now