Beginners may be reading this thread, so I feel like it's time to deal with some misinformation.
and also applying :, which seemed to me as a keyword, not an operator...
You should learn about how languages are parsed to more clearly understand what you're talking about. The colon in a switch statement is a 'token' which is an integral part of the case statement syntax, and is neither a keyword nor an operator. Guessing what something means without doing research to find out if your guess is correct or not isn't a very good way to learn programming.
Maybe it even produces goto instructions when compiled, do not know, I suspect switch of anything. When I was learning to program, I had to have exact knowledge of every instruction. its definition and abstract.
That kind of knowledge can be gained as simply as placing a breakpoint on a C/C++ switch statement and opening a disassembly window to see what assembly instructions are present. It's no use trying to speculate or guess what could be happening when you can ACTUALLY SEE what's happening if you look in the right place.
I pretty soon discoverd that switch is an instruction that has nothing exclusive to the rest of instructions...
The jump table built by switch statements in some languages is not possible to reproduce in those languages without using inline assembly. No language I know of allows you to declare an array of intrafunction labels and say "goto array[labelIndex];" (that's pseudocode of what a single-lookup table-based switch does in C and C++).
The closest you can get in C and C++ is an array of function pointers, but those incur the cost of calling the function and passing parameters. With a jump table, you don't leave the function, so you don't incur any function call overhead. The compiler is also much more free to rearrange the control flow graph and share common groups of statements in separate switch blocks.
...instruction...
...atomic...
I realize that English probably isn't your native language, but you should really make sure you get your terminology correct. Having discussions with other programmers becomes difficult if everyone decides to use words that mean different things to everyone else.