Assembly Programing Language

So I I once worked with a guy who knows assembly and he begin teaching it to me.
I have read a book about it and I want to continue learning it. Is there any one in the group that knows it and would like to talk about it? I can kind of learn thing from but I am more of a hands on learner.

3 Likes

I am probably the biggest fan of assembly language at DMS.

What processor architecture(s) are you interested in? Most desktop and laptop PCs are Intel x86. Raspberry Pi and most mobile phones and tablets are ARM. Arduino is Atmel AVR. Vintage computers can be almost anything.

Once you learn one, learning another is a bit easier.

4 Likes

So I think my co worker used some Motorola chip.
The book I have and read is about the x76. I completely open to whatever you are wiling to teach me to on.
I do not really have a specific project or time line on learning this . I do much better communicating in person. When every you are free and plan to be at Dms, we can have a chat.
I look forward to meeting you.
Thank you

1 Like

Assembly isn’t really a language, but a category of languages. It’s tricky to learn or use without the specific hardware you are writing it for so some type of x86 is probably the easiest to start with if you actually want to do a real project for practical reasons, but it is one of the more complicated ones to learn so you really probably want to learn a language like MIPS first which was specifically designed to teach assembly ideas and you can simulate the hardware for.

https://rivoire.cs.sonoma.edu/cs351/wemips/

2 Likes

I do have a PIC micro-controller on the list of things I want to learn. Maybe I should start with that.
Does anyone know how to problem or work with those?

1 Like

Ditch the PIC and target an STM32 or an ESP32. PICs are dinosaurs now.

I have never heard of a Motorola x76 anything. Their popular product lines are 68 something.

I have not been going to DMS so will can talk here.

What is your level of programming experience in any language?

x86 is the most prevalent, but it is not a good one for a beginner, though it is better today than in the old days of 16-bit segmented code.

ARM is almost as common. A Raspberry Pi is a great platform for learning ARM assembly language. That is what I am currently doing.

Atmel AVR (used by Arduino) is another nice architecture, but the usual Arduino programming environment does not directly support assembly language unless it has been changed.

Even if you do not have actual hardware, simulators can be found for most architectures. A simulator is great for learning and debugging.

I have worked with the SX52 in the past. It is essentially a very fast PIC 16. I cannot recommend that for your first platform.

PIC 24 is nice as is PIC 32 which is MIPS.

1 Like

Due to a cancelation, a seat is available this evening in my Pico W / MicroPython class. While Python is far removed from assembly language, if you are not familiar with microcontrollers, this will give you a hands-on chance to load and modify programs and wire up various sensors.
https://calendar.dallasmakerspace.org/events/view/20065

I stared in high school and college learning c/ c++. I done a couple of project with those languages. I have also do some projects with Arduino. I would say I am pass the basic of programs ( but I am will to learn anything you want to teach me ) I like the ideal of working with a microprocessor and learning on the level.

1 Like

Tonight I am celebrating my 3 year anniversary with wife. Other wise I would be here. Thank you for all your support.

2 Likes

Congratulations on your anniversary! You clearly have your priorities in order.

Congrats. My wife hardy remembers ours. We just had our 21st

2 Likes

Thank I love DMS. One of the few thing that excites me more than working at DMS is my wife . She is also a member. I has been a great 3 years.

2 Likes

Micro chip still makes things at 80 MIPs for 32 bits. Assemble is about price per chip. Still connectivity is going towards STM32 as it is open source. Just watch your thermal constraints. target 0c to 80c for stm32 i think. pic32 can reach -20c to 105c.

1 Like

I have searched all over and have found absolutely nothing about x76 from anybody. The most likely conclusion at this point is that you actually meant x86 and that sentence had nothing to do with Motorola in the previous one.

I can cover x86, but there are several problems:

  • there are significant differences between 16, 32 and 64 bit code. I have no experience with 64 bit.
  • there are vast differences between the several assemblers commonly available.
  • there are different interfaces to the operating system. I know DOS and Windows and have yet to program Linux on an x86.

Are you OK with ARM? Do you have a Raspberry Pi? The assembler comes with the system so there is only one dialect to deal with. Most likely, we will be running Linux.

Are you well versed in computer organization and architecture? A strong understanding here makes learning assembly language much easier.

1 Like

You are still together. That is very admirable today.

1 Like


This is that book I read

1 Like

Assembler - brings back many fond and not so fond memories. X86 - walk away. Bastardized architecture / instruction set forced upon the world by the marketing promotional juggernaut of Intel. Proof that less than best can become a standard.

Depending on what your end goal is, I’ll recommend studying various 8 bit micros.
If one of your goals is understanding the inner workings, consider starting out with the 6800 and Z80 micros. Study the architectures, understand how data and instructions are accessed, how the different memory modes work,

Getting bored with that - step it up a notch. Flags - what they are and how they’re used. What instructions affect which flags. How flags are are used for conditional branching.

Next up - Interrupts. Non-maskable, vectored, etc. How ISR’s are handled.
Volatiles anyone?

Got all that? Next - how all of the above talks to the real world. Address / data buses, control lines - the hardware. Memory and IO address mapping.

Today’s SOCs and high level languages shields the end user from all this. So why bother to learn / understand? Damn good set of tools to have in your problem solving tool box. Enjoy! :grin:

3 Likes