You ask if you get a better idea of ββauto mechanics if you drive a mechanical gearbox rather than automatic ones - you will feel a little what the engine is doing and you will get a terrible chopping mess if you do it wrong, but you wonβt get any deep understanding of what is under the hood.
The semantics of the C language, of which objective-C is a superset, reflects the architecture of the machine for which it was created - PDP-11.
If you look at modern computer architectures - shared command and data memory, virtual memory, L1 and L2 cache, bus speed limits, north and south bridges, multi-core or multi-core processors, solid state drive, graphics processor, FPGA accelerators - then there is no language , which has semantics that will meet all the options, and the C language has nothing to do with them. The best place to study computer architecture is a text book or a lecture on computer architecture, or read about how modern architecture effects programs are in all languages .
C will provide you with portable assembler, so it is a few steps from the architecture - it is assumed that you have pointers (which can be implemented as addresses) in the area where you can store data, and they have keywords that imply that the data may change (mutably) and that the processor has registers, and is not based on the stack. But in reality, this will not tell you about the architecture of your machine, it will only tell you about the C memory model, which is an abstraction of machines 40 years ago.
source share