Click here to Skip to main content
15,881,281 members
Home / Discussions / C / C++ / MFC
   

C / C++ / MFC

 
AnswerRe: is it okeedokee to include defining headers hither and yon all over the place Pin
Mircea Neacsu9-Feb-23 7:08
Mircea Neacsu9-Feb-23 7:08 
GeneralRe: is it okeedokee to include defining headers hither and yon all over the place Pin
BernardIE53179-Feb-23 7:46
BernardIE53179-Feb-23 7:46 
GeneralRe: is it okeedokee to include defining headers hither and yon all over the place Pin
Mircea Neacsu9-Feb-23 8:06
Mircea Neacsu9-Feb-23 8:06 
GeneralRe: is it okeedokee to include defining headers hither and yon all over the place Pin
BernardIE53179-Feb-23 8:46
BernardIE53179-Feb-23 8:46 
AnswerRe: is it okeedokee to include defining headers hither and yon all over the place Pin
jschell9-Feb-23 9:34
jschell9-Feb-23 9:34 
QuestionCompilers Pin
Calin Negru2-Feb-23 9:24
Calin Negru2-Feb-23 9:24 
AnswerRe: Compilers Pin
Mircea Neacsu2-Feb-23 9:56
Mircea Neacsu2-Feb-23 9:56 
AnswerRe: Compilers Pin
Dave Kreskowiak2-Feb-23 10:08
mveDave Kreskowiak2-Feb-23 10:08 
Calin Negru wrote:
A C# program is compiled with a compiler written in c++
A C++ program is compiled with a compiler written in assembly
An assembly program is compiled with a compiler written with machine instructions
Is that roughly how it works?

Nope, that's not how it works. For example, the Roslyn compiler platform for .NET is written in C#. The very first C# compiler was probably written in C/C++, but not subsequent versions.

A MOV instruction is not the same size on all platforms. For example, a MOV instruction, with operands, on an 8-bit CPU is not the same size as it is on 64-bit CPU's. What the op-code value is determined by comes down to available addressing modes for the instruction, available registers and their width, instruction decode logic and hardware in the CPU, data bus width, address bus width, and a sprinkle of arbitrary. Since there are vast differences in CPU design, the hardware makes it impossible to have the same representation across all CPU's.

Think about it. On a 64-bit CPU, how are you going to have a "MOV r, imm" (MOVe immediate to register) be represented and work exactly the same on an 8-bit CPU when it doesn't have registers that can hold a 64-bit integer?

There's far more to this than what I've posted, but this scratches the surface of why that idea will never work.

GeneralRe: Compilers Pin
trønderen2-Feb-23 12:41
trønderen2-Feb-23 12:41 
GeneralRe: Compilers Pin
Dave Kreskowiak2-Feb-23 12:43
mveDave Kreskowiak2-Feb-23 12:43 
GeneralRe: Compilers Pin
jschell3-Feb-23 5:17
jschell3-Feb-23 5:17 
GeneralRe: Compilers Pin
Calin Negru2-Feb-23 21:29
Calin Negru2-Feb-23 21:29 
GeneralRe: Compilers Pin
Dave Kreskowiak3-Feb-23 11:32
mveDave Kreskowiak3-Feb-23 11:32 
GeneralRe: Compilers Pin
trønderen3-Feb-23 12:40
trønderen3-Feb-23 12:40 
AnswerRe: Compilers Pin
trønderen2-Feb-23 13:54
trønderen2-Feb-23 13:54 
GeneralRe: Compilers Pin
Calin Negru2-Feb-23 22:27
Calin Negru2-Feb-23 22:27 
GeneralRe: Compilers Pin
Richard MacCutchan2-Feb-23 23:16
mveRichard MacCutchan2-Feb-23 23:16 
GeneralRe: Compilers Pin
Calin Negru4-Feb-23 5:47
Calin Negru4-Feb-23 5:47 
AnswerRe: Compilers Pin
jschell3-Feb-23 5:21
jschell3-Feb-23 5:21 
AnswerRe: How it came to be. Pin
Jeremy Falcon6-Feb-23 9:11
professionalJeremy Falcon6-Feb-23 9:11 
GeneralRe: How it came to be. Pin
jsc426-Feb-23 23:14
professionaljsc426-Feb-23 23:14 
GeneralRe: How it came to be. Pin
Jeremy Falcon7-Feb-23 3:25
professionalJeremy Falcon7-Feb-23 3:25 
AnswerRe: Compilers Pin
BernardIE53179-Feb-23 8:51
BernardIE53179-Feb-23 8:51 
QuestionMessage Closed Pin
1-Feb-23 14:01
Member 149687711-Feb-23 14:01 
AnswerRe: English , please.... Pin
Victor Nijegorodov1-Feb-23 20:25
Victor Nijegorodov1-Feb-23 20:25 

General General    News News    Suggestion Suggestion    Question Question    Bug Bug    Answer Answer    Joke Joke    Praise Praise    Rant Rant    Admin Admin   

Use Ctrl+Left/Right to switch messages, Ctrl+Up/Down to switch threads, Ctrl+Shift+Left/Right to switch pages.