Assuming you are equally new to each of the languages, this is what you would encounter.
Assembly is the lowest level code and is the hardest to master. The time taken to deliver a project maybe the longest if you use assembly language. However, it is akin to driving a Top Notch racing car and you can get the best output if you know how to use it.
Basic is a (HLL)higher level language. It bundles a group of assembly language instructions into a single HLL command. Time taken to deliver a project is many times faster compared with assembly. There may be limitations on the math you could possibly do with basic. You need to check the specific dialect of basic you use to see if it allows you to handle integer, floating point math. Most low cost basics are simply integer basic. No support for floating point math. Many dialects including PicBasicPro have commands to handle various peripherals.
C is a more universal HLL. Similar to basic, it bundles a group of assembly language instructions into a single HLL command. Time to deliver is comparable with what you could achieve with Basic or any HLL. Most C dialects would support floating point math which may be needed for that once-in-a-while project. The biggest advantage you get with C - most code snippets online across microcontrollers would very often be in C. So, you are in a crowd and will get example code easily. You need to choose a dialect that has commands to handle the peripherals you use.
Whichever language you choose, be sure your compiler supports inline assembly so that you can tweak code when you really need to. If you code for a living, any HLL is better than assembler since you can code that much faster. The compiler takes care of the data sizes and most times you do not have to remember if you are adding 2 bytes or a byte and an integer etc.
Bookmarks