1. Kod źródłowy często zapisuje się w plikach `.asm`
2. Może lektura tych materiałów do zajęć z uj trochę ci rozjaśni
3. Niezbyt się da, tak samo jak nie otworzysz C++, pythona, Javascriptu. Możesz co najwyżej asemblować kod do pliku .exe albo .o (tu czytaj ostatnią sekcję)
4. Trochę ich jest
- małe programy dla systemów wbudowanych: oprogramowanie dla telefonów, lodówek, samochodów itp.
- sterowniki urządzeń,
- wykonywanie poleceń procesora nie dostępnych w językach wysokiego poziomu, np. rotacja bitów dla kodowania,
- obliczenia wektorowe: MMX, SIMD,
- oprogramowanie które wymaga ekstremalnej wydajności: gry, pakiety algebry liniowej,
- oprogramowanie dla komputerów dla których nie istnieja języki wysokiego poziomu
- pisanie kompilatorów
- pisanie wirusów komputerowych i bootloaderów
- reverse-enginering, modyfikowanie plików wykonywalnych, łamanie zabezpieczeń
- kod samo modyfikujący się