Myślę, że tytuł mówi wszystko :)
Czy jest jakiś konkretny praktyczny powód (wydaje mi się, że jest to głównie historyczny, ale nie jestem w stanie go znaleźć na własną rękę), dlaczego GCC używa składni AT & T / GAS?
Uwaga: wiem, że jest to tylko domyślna opcja, którą możesz zmienić
Uwaga 2: Osobiście uważam, że „składnia Intela” jest znacznie bardziej czytelna, dlatego mnie to zaskakuje.
why gcc uses at&t
tego pytania.Odpowiedzi:
GCC domyślnie używa składni AT&T, ponieważ została pierwotnie napisana w systemie, który albo używał AT&T System V (obecnie znany jako UNIX), albo miał składnię, która bardzo przypominała System V.
Z Wikipedii na GCC
Zwróć uwagę na następującą część:
Biorąc pod uwagę to
GCC was first released March 22, 1987
* i toSystem V Release 3 was released in 1986
** , jest wysoce prawdopodobne, że GCC zostało zapisane na SVR2 lub SVR3.Cytat z Wikipedii wyjaśnia, że Stallman pracował na sprzęcie Lawrence Livermore Labs, który był oparty na systemie Unix, a zatem na Systemie V. Mogliśmy więc się tam zatrzymać i powiedzieć „nad tym musiał pracować”. Interesujące jest również spojrzenie na dostępne systemy MS-DOS / PC-DOS w tym momencie. Zgodnie z tym harmonogramem prawdopodobnym kandydatem na PC-DOS 1 byłaby wersja 3.2.
Komputery osobiste (komputery osobiste) nie były wtedy tak powszechnie używane w środowisku akademickim lub badawczym, ponieważ ich możliwości sieciowe nie były tak dobre, jak mogłyby zapewnić systemy oparte na Uniksie. Historycznie preferowano również środowiska typu serwer / terminal. Systemy serwerów / terminali były dostępne przed istnieniem komputerów osobistych i generalnie zapewniały znacznie większą moc przetwarzania i inne zasoby niż to, co komputer mógł sobie pozwolić.
Tak więc chociaż Stallman mógł opracować GCC na PC, prawdopodobnie nie chciałby, ponieważ jego podstawową pracą byłyby systemy Unix.
Jak zauważono w komentarzu , istniała zasadnicza różnica architektoniczna między procesorami zasilającymi systemy Unix i komputery PC.
Połącz te wszystkie elementy i jest całkiem jasne, dlaczego Stallman wybrał składnię AT&T zamiast Intela podczas opracowywania GCC.
1 Zauważ, że najłatwiej jest powiedzieć, że MS-DOS nazywał się PC-DOS przed wersją 3.31. To powiedziawszy, w historii rozwoju DOS jest wiele rzeczy, które są poza zakresem tego pytania.
źródło