First generation computers (1940-1956) were room-sized machines that used vacuum tubes, generated large amounts of heat, and had slow speeds. They relied on machine language and magnetic drums for memory storage. Second generation computers (1956-1963) replaced vacuum tubes with transistors, reducing size and improving reliability and speed. They introduced high-level programming languages and magnetic core memory. Third generation computers (1964-1971) used integrated circuits, making the devices smaller and faster with more storage capacity. Input/output devices became more advanced.