title: Why is the use of the 'DS:' segment override illegal in 64-bit mode?
body: <p>I have a pretty simple few lines of assembly code, which moves around some data, like this:</p>
  
  <pre><code>mov rax,qword ptr gs:[60]                         
  mov rcx,qword ptr ds:[rax+20]                                         
  mov rax,qword ptr gs:[60]                         
  mov rcx,qword ptr ds:[rax+20]                     
  mov rbx,qword ptr ds:[rcx+28] 
  </code></pre>
  
  <p>However, the compiler returns </p>
  
  <blockquote>
    <p>error A2202:illegal use of segment register</p>
  </blockquote>
  
  <p>I have a feeling this may be an issue with my compiler or version, any pointers would be helpful</p>