The casting of Whishaw — who starred in the film "Bright Star," as well as BBC's TV drama "The Hour" — is surprising, as Q has historically been played by an actor who is older than the actor playing James Bond. Whishaw is 31 years old, and 007 actor Daniel Craig is 43.
Also read: James Bond's New Title: 'Skyfall'
Q was most memorably played by Desmond Llewelyn, who assumed the role for 17 Bond films. The last time Q appeared was in 2002's "Die Another Day," when he was played by John Cleese.
An MGM spokesperson declined comment.
"Skyfall," which is set to debut in the U.S. Nov. 9, 2012, also stars Javier Bardiem, Albert Finney, Judi Dench, Naomie Harris and Ralph Fiennes. Sam Mendes is directing the film, which will be co-financed by MGM and Sony.
In 2010, MGM, which holds the rights to the Bond series, decided to delay the film because of the sale of the company.